/// <summary>
        /// Initialization of the package; this method is called right after the package is sited, so this is the place
        /// where you can put all the initialization code that rely on services provided by VisualStudio.
        /// </summary>
        /// <param name="cancellationToken">A cancellation token to monitor for initialization cancellation, which can occur when VS is shutting down.</param>
        /// <param name="progress">A provider for progress updates.</param>
        /// <returns>A task representing the async work of package initialization, or an already completed task if there is none. Do not return null from this method.</returns>
        protected override async Task InitializeAsync(CancellationToken cancellationToken, IProgress <ServiceProgressData> progress)
        {
            // When initialized asynchronously, the current thread may be a background thread at this point.
            // Do any initialization that requires the UI thread after switching to the UI thread.
            await this.JoinableTaskFactory.SwitchToMainThreadAsync(cancellationToken);

            //await WPushCommand.InitializeAsync(this);
            await OutputsWindow.InitializeAsync(this);

            await WDotykCmdCommand.InitializeAsync(this);

            await CPush.InitializeAsync(this);

            await CPack.InitializeAsync(this);

            await CDeploy.InitializeAsync(this);
        }
        //void DeletePane(Guid paneGuid)
        //{

        //    IVsOutputWindow output =
        //    (IVsOutputWindow)ServiceProvider.GetService(typeof(SVsOutputWindow));

        //    IVsOutputWindowPane pane;
        //    output.GetPane(ref paneGuid, out pane);

        //    if (pane == null)
        //    {
        //        pane = CreatePane(paneGuid, "New Pane\n", true, true);

        //    }
        //    else
        //    {
        //        output.DeletePane(ref paneGuid);
        //    }
        //}

        //private void OutputCommandHandler(object sender, EventArgs e)
        //{
        //    CreatePaneAsync(new Guid(), "Created Pane", true, false);
        //}


        public static async Task InitializeAsync(AsyncPackage package)
        {
            ThreadHelper.ThrowIfNotOnUIThread();
            Instance = new OutputsWindow(package);
            await Instance.CreatePaneAsync(new Guid(), "Dotyk Logger", true, true);
        }