include username in required params
fix misspelling of method of ensure_authentication_token method
user login instead of email for login param
allow signing in by email or username
added basic test cases for find_first_by_auth_conditions method