Fiat, Monetary and ExchangeRate

Introduce Fiat as a holder for fiat values. Coin and Fiat share an interface Monetary so that monetary infrastructure can be re-used.

Adapt CoinFormat to be used with Monetary. Add an ExchangeRate value class that can convert from Coin to Fiat and back.
OK, can you add a comment explaining this? And yeah I guess the smallest representable unit of a fiat currency is the cent. I don't know of any currencies with subcent divisions that are in wide usage.