Simplify code

Need to split up fields to:
  - DigestField
  - HMACField
  - PGPPublicKeyField
  - PGPSymmetricKeyField
Perhaps we shouldn't set a default for `raw` here? We use both versions equally often.