/// <summary>
        /// Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
        /// </summary>
        /// <filterpriority>2</filterpriority>
        public void Dispose()
        {
            // If we're in the process of disposing, return
            if (isDisposing)
            {
                return;
            }
            if (Container == null)
            {
                return;
            }

            // Signal the fact that we're disposing the container
            isDisposing = true;

            // Perform actual dispose
            Container.Dispose();

            // Clean up these pieces
            Container     = null;
            currentModule = null;
        }
 /// <summary>
 /// Gets the associated <see cref="IServiceRegistrar"/> to process.
 /// </summary>
 /// <returns></returns>
 public IServiceRegistrar Batch()
 {
     currentModule = new TurbineModule(Container);
     return(currentModule);
 }