         }
     }
 
-    private func reloadHighlights() {
-        fetchHighlights().uponQueue(dispatch_get_main_queue()) { result in
+    private func reloadHighlights() -> Success {
+        return fetchHighlights().bindQueue(dispatch_get_main_queue()) { result in
             self.highlights = result.successValue?.asArray() ?? self.highlights
-            self.tableView.reloadSections(NSIndexSet(index: Section.Highlights.rawValue), withRowAnimation: .Automatic)
+            return succeed()
         }
     }
 

                ASOnyxPing.reportTapEvent(event)
                self.showSiteWithURLHandler(url)
            }
            self.tableView.reloadSections(NSIndexSet(index: Section.TopSites.rawValue), withRowAnimation: .Automatic)
        }
    }


        return self.profile.recommendations.getHighlights()
    }

    private func reloadTopSites() -> Success {
        return invalidateTopSites().bindQueue(dispatch_get_main_queue()) { result in
            let defaultSites = self.defaultTopSites()
            let mySites = (result.successValue ?? [])

