Improve authentication

Support:

 * Account lockout
 * Force password changes
 * Feedback on invalid login