public Promise<Void, BError, Void> followUser(final BUser userToFollow) {
if (!BDefines.EnableFollowers)
throw new IllegalStateException("You need to enable followers in defines before you can use this method.");
final Deferred<Void, BError, Void> deferred = new DeferredObject<>();
final BUser user = currentUserModel();
<BUG>DatabaseReference userToFollowRef = FirebasePaths.userRef(userToFollow.getEntityID());
userToFollowRef = FirebasePaths.appendPathComponent(userToFollowRef, BFirebaseDefines.Path.BFollowers);
userToFollowRef = FirebasePaths.appendPathComponent(userToFollowRef, user.getEntityID());
if (DEBUG) Timber.d("followUser, userToFollowRef: ", userToFollowRef.toString());</BUG>
userToFollowRef.setValue("null", new DatabaseReference.CompletionListener() {

public Promise<Void, BError, Void> followUser(final BUser userToFollow) {
if (!BDefines.EnableFollowers)
throw new IllegalStateException("You need to enable followers in defines before you can use this method.");
final Deferred<Void, BError, Void> deferred = new DeferredObject<>();
final BUser user = currentUserModel();
DatabaseReference userToFollowRef = FirebasePaths.userRef(userToFollow.getEntityID())
.child(BFirebaseDefines.Path.BFollowers)
.child(user.getEntityID());
if (DEBUG) Timber.d("followUser, userToFollowRef: ", userToFollowRef.toString());
userToFollowRef.setValue("null", new DatabaseReference.CompletionListener() {
