public async Task DoWork()
        {
            PromptUserNamePassword();
            GetToken().Wait();
            UserLineups userLineups = await GetUserLineups();

            var lineup = PromptChooseLineup(userLineups);

            if (lineup.lineup == null)
            {
                throw new ArgumentNullException("Lineup was null!");
            }
            var channelMappingLineup = await GetChannelMappingLineup(lineup);

            DownloadIcons(channelMappingLineup).Wait();
        }
        private Lineup PromptChooseLineup(UserLineups userLineups)
        {
            int  count = 0;
            int  selectionInt;
            bool validSelection = false;

            Lineup selectedLineup = new Lineup();

            while (!validSelection)
            {
                Console.WriteLine("Please select a lineup to download icons from");

                foreach (var lineup in userLineups.lineups)
                {
                    Console.WriteLine(String.Format("[{0}]", count));
                    Console.WriteLine(lineup.lineup.PadLeft(4));
                    Console.WriteLine(lineup.name.PadLeft(4));
                    Console.WriteLine(lineup.transport.PadLeft(4));
                    Console.WriteLine(lineup.location.PadLeft(4));
                    Console.WriteLine(lineup.uri.PadLeft(4));
                    Console.WriteLine(lineup.isDeleted.ToString().PadLeft(4));
                }
                Console.Write(">");

                var selection = Console.ReadLine();

                if (Int32.TryParse(selection, out selectionInt))
                {
                    if (selectionInt > userLineups.lineups.Count)
                    {
                        Console.WriteLine("Choose a valid selection");
                        validSelection = false;
                    }
                    else
                    {
                        validSelection = true;
                        selectedLineup = userLineups.lineups[selectionInt];
                    }
                }
                else
                {
                    Console.WriteLine("Choose a valid selection");
                    validSelection = false;
                }
            }
            return(selectedLineup);
        }