Implementing Marshaler and Unmarshaler interfaces for Macaroon and Caveat.

// UnmarshalJSON implements json.Unmarshaler.