Bugfix: angularFire() returned undefined when value is already cached.

First let me say that I'm not completely sure about the intended logic of the variable `deferred`.

But I experienced this problem: If the value is already cached then the callback given in `this._fRef.on ()` will be called immediately. This will set `deferred` to false, so `return deferred.promise` will return undefined instead of the intended promise.