public static void Initialise()
        {
            var container = new UnityContainer();

            ServiceLocator.Instance = container;

            // forms
            container.RegisterAsPerResolve <MainMDI, MainMDI>();
            container.RegisterAsPerResolve <DeleteForm, DeleteForm>();
            container.RegisterAsPerResolve <PilotStatsForm, PilotStatsForm>();
            container.RegisterAsPerResolve <About, About>();
            container.RegisterAsPerResolve <NetConnectionSelectorForm, NetConnectionSelectorForm>();
            container.RegisterAsPerResolve <PilotDataLoaderForm, PilotDataLoaderForm>();
            container.RegisterAsPerResolve <DefineSquadronForm, DefineSquadronForm>();
            container.RegisterAsPerResolve <StartupTips, StartupTips>();

            // helpers
            container.RegisterAsSingleton <SquadScoreStatsBuilder, SquadScoreStatsBuilder>();
            container.RegisterAsSingleton <GraphBuilder, GraphBuilder>();
            container.RegisterAsSingleton <IRegistry, Registry>();

            // service layer
            container.RegisterAsSingleton <IHTCTourDefinitionsSvc, HTCTourDefinitionsSvc>();
            container.RegisterAsSingleton <IHTCPilotStatsSvc, HTCPilotStatsSvc>();
            container.RegisterAsSingleton <IHTCPilotScoreSvc, HTCPilotScoreSvc>();
            container.RegisterAsSingleton <IHtmlToXMLLoader, HtmlToXMLLoader>();
        }