shifted the preDelete hook to fire before we've validated the canDelete and permissions as the hook might make it possible
added information to the hooks
wired up the name field to come across properly
moved the password generation & hashing to the base Authenticator class;