API: Refactor the authentication plugin system to make it easier to create new authenticators without so much copy & paste.
NEW: Allow passing of default data to change password from from querystring.
FIX: When re-setting your password from a lost password email, make sure that you're not already logged in.