private async void RefreshTimeLine(TwitterList matches, StatusType type)
        {
            if (SuspensionManager.SessionState.ContainsKey("Authorizer"))
            {
                _auth = SuspensionManager.SessionState["Authorizer"] as PinAuthorizer;
            }
            if (_auth != null)
            {
                try
                {
                    using (var twitterCtx = new TwitterContext(_auth))
                    {
                        var timelineResponse =
                            (from tweet in twitterCtx.Status
                             where tweet.Type == type &&
                             tweet.ScreenName == LoggedInUser.Title
                             select tweet)
                            .ToList();

                        IEnumerable<TweetItem> tweets =
                            (from tweet in timelineResponse
                             select new TweetItem(tweet.StatusID,
                                 tweet.User.Name,
                                 tweet.User.Identifier.ScreenName,
                                 tweet.User.ProfileImageUrl,
                                 tweet.Text,
                                 tweet.Text,
                                 matches)
                            );
                        if (tweets.Count<TweetItem>() > 0)
                        {
                            IEnumerable<TweetItem> results = 
                                matches.Items.Union<TweetItem>(tweets, 
                                    new UniqueIdCompararer()).OrderByDescending
                                        <TweetItem, string>
                                            (k => k.UniqueId);
                            matches.Items.Clear();
                            foreach (var item in results)
                            {
                                matches.Items.Add(item);
                            }
                        }
                    }
                    await CreateCollage();
                }
                catch (LitJson.JsonException je)
                {
                    //TODO: Log the Json Exception and move on.
                }
            }
        }
        private void InitGroups()
        {
            if (SuspensionManager.SessionState.ContainsKey("Authorizer"))
            {
                _auth = SuspensionManager.SessionState["Authorizer"] as PinAuthorizer;
                if (_auth != null)
                {
                    using (var twitterCtx = new TwitterContext(_auth))
                    {
                        string screenName = twitterCtx.AuthorizedClient.ScreenName;

                        var users = (from usr in twitterCtx.User
                                     where usr.Type == UserType.Lookup &&
                                     usr.ScreenName == screenName
                                     select usr).ToList();
                        this.LoggedInUser = new TweetItem(users[0].ID, users[0].Name, users[0].ScreenName, users[0].ProfileImageUrl, "", "", null);
                        TwitterList timeline = new TwitterList("timeline", "Timeline", "Your Tweet Stream", null, users[0].Status.Text);
                        this._allGroups.Add(timeline);
                        TwitterList atMentions = new TwitterList("atMentions", "@ Connect", "Your @ Mentions", null, users[0].Status.Text);
                        this._allGroups.Add(atMentions);
                    }
                }
            }
            else if (!SuspensionManager.SessionState.ContainsKey("Authorizer"))
            {
                LocalDataCredentials cred = new LocalDataCredentials();
                if (cred.ToString() != ",,,,,")
                {
                    SuspensionManager.SessionState["SavedAuthorizer"] = cred;
                    try
                    {
                        PinAuthorizer auth = new PinAuthorizer
                        {
                            Credentials = (LocalDataCredentials)SuspensionManager.SessionState["SavedAuthorizer"],
                            UseCompression = true
                        };
                        SuspensionManager.SessionState["Authorizer"] = auth;
                        auth.ScreenName = cred.ScreenName;
                        auth.UserId = cred.UserId;

                    }
                    catch (Exception ex)
                    {
                        ((LocalDataCredentials)SuspensionManager.SessionState["SavedAuthorizer"]).Clear();
                    }
                }
            }
        }