private static void InitialiseContainer()
        {
            var containerBuilder = new ContainerBuilder();
            IDatabaseConnectionCredentials connectionCredentials = _appConfigurationManager.GetDatabaseConnectionCredentials();

            containerBuilder.Register <ILogger>(x => _logger).SingleInstance();
            containerBuilder.Register <IDatabaseConnectionCredentials>(x => connectionCredentials).SingleInstance();
            containerBuilder.RegisterType <MySqlConnectionWrapper>().As <IMySqlConnectionWrapper>().SingleInstance();
            containerBuilder.RegisterType <SecurityDataRetrieverManager>().As <ISecurityDataRetrieverManager>().SingleInstance();
            containerBuilder.Register(x => x.Resolve <ISecurityDataRetrieverManager>().GetSecurityDataRetriever()).As <ISecurityDataRetriever>();
            containerBuilder.RegisterType <MySqlCommandWrapperFactory>().As <IMySqlCommandWrapperFactory>();
            containerBuilder.RegisterType <PersistenceManager>().As <IPersistenceManager>();
            containerBuilder.RegisterType <DataGrabTaskFactory>().As <IDataGrabTaskFactory>();
            containerBuilder.RegisterType <DataModelFactory>().As <IDataModelFactory>();

            _container = containerBuilder.Build();
        }