Patch up database to accept PGP and Contact fields

This involved some sql.NullString trickery and a PGPID type to wrap the
PGP field.

Close #67