'Checks to see if a user with the given id exists. Will check case
insensitively, but return None if there are multiple inexact matches.
Args:
(str) user_id: complete @user:id
Returns:
defer.Deferred: (str) canonical_user_id, or None if zero or
multiple matches'

@defer.inlineCallbacks
def check_user_exists(self, user_id):

    res = (yield self._find_user_id_and_pwd_hash(user_id))
    if (res is not None):
        defer.returnValue(res[0])
    defer.returnValue(None)
