 
           _loadFirst: () ->
             setDefaultRepo()
-            return remoteUpdater.start()
-            .fail((err) => alert('There was a problem starting the remote updater. Are you pointing to a valid book?'))
+            updater = remoteUpdater.start()
+            return onFail(updater, 'There was a problem starting the remote updater')
             .then () =>
-              allContent.load()
-              .fail((err) => alert('There was a problem loading the repo. Are you pointing to a valid book?'))
+              return onFail(allContent.load(), 'There was a problem loading the repo')
 
           configRepo: (repoUser, repoName, branch='') ->
             session.set


  # Stop logging.
  logger.stop()

  App = new Marionette.Application()


              branch:   branch

            remoteUpdater.stop()
            onFail(allContent.reload(), 'There was a problem re-loading the repo')
            @goWorkspace()

          # Delay the route handling until the initial content is loaded
