title: How to return a resolved promise from an AngularJS Service using $q?
body: <p>My service is:</p>
  
  <pre><code>myApp.service('userService', [
    '$http', '$q', '$rootScope', '$location', function($http, $q, $rootScope, $location) {
      var deferred;
      deferred = $q.defer();
      this.initialized = deferred.promise;
      this.user = {
        access: false
      };
      this.isAuthenticated = function() {
        this.user = {
          first_name: 'First',
          last_name: 'Last',
          email: 'email@address.com',
          access: 'institution'
        };
        return deferred.resolve();
      };
    }
  ]);
  </code></pre>
  
  <p>I'm calling this in my <code>config</code> file via:</p>
  
  <pre><code>myApp.run([
    '$rootScope', 'userService', function($rootScope, userService) {
      return userService.isAuthenticated().then(function(response) {
        if (response.data.user) {
          return $rootScope.$broadcast('login', response.data);
        } else {
          return userService.logout();
        }
      });
    }
  ]);
  </code></pre>
  
  <p>However, it complains that <code>then</code> is not a function. Aren't I returning the resolved promise?</p>