Add basic public key add/delete

This adds a very basic functionality for users to add/delete public
keys. It provides pubkey verification so we don't allow adding keys that
aren't actually valid keys.

You are allowed to add a public key for your account, and if you're a
user_admin, you can add/delete them on any account. Anybody can view
public keys.
This should probably be a String vs Text. String is stored as a VARCHAR instead of TEXT in the database.