Use more idiomatic names, better comments for Marshaler and Unmarshaler interface implementation, save allocation time in Macaroon MarshalJSON.