code: def buildSubscriptionList(self):
          
          self._clearLists()
          unreadById = {}
  
          if not self.userId:
              self.getUserInfo()
  
          unreadJson = self.httpGet(ReaderUrl.UNREAD_COUNT_URL, { 'output': 'json', })
          unreadCounts = json.loads(unreadJson, strict=False)['unreadcounts']
          for unread in unreadCounts:
              unreadById[unread['id']] = unread['count']
  
          feedsJson = self.httpGet(ReaderUrl.SUBSCRIPTION_LIST_URL, { 'output': 'json', })
          subscriptions = json.loads(feedsJson, strict=False)['subscriptions']
  
          for sub in subscriptions:
              categories = []
              if 'categories' in sub:
                  for hCategory in sub['categories']:
                      cId = hCategory['id']
                      if not cId in self.categoriesById:
                          category = Category(self, hCategory['label'], cId)
                          self._addCategory(category)
                      categories.append(self.categoriesById[cId])
  
              try:
                  feed = self.getFeed(sub['id'])
                  if not feed:
                      raise
                  if not feed.title:
                      feed.title = sub['title']
                  for category in categories:
                      feed.addCategory(category)
                  feed.unread = unreadById.get(sub['id'], 0)
              except:
                  feed = Feed(self,
                              sub['title'],
                              sub['id'],
                              sub.get('htmlUrl', None),
                              unreadById.get(sub['id'], 0),
                              categories)
              if not categories:
                  self.orphanFeeds.append(feed)
              self._addFeed(feed)
  
          specialUnreads = [id for id in unreadById
                              if id.find('user/%s/state/com.google/' % self.userId) != -1]
          for type in self.specialFeeds:
              feed = self.specialFeeds[type]
              feed.unread = 0
              for id in specialUnreads:
                  if id.endswith('/%s' % type):
                      feed.unread = unreadById.get(id, 0)
                      break
  
          return True
docs: Hits Google Reader for a users's alphabetically ordered list of feeds.
  
          Returns true if succesful.