PLT-464 - Add country

A class representing a country by ISO-3166-1.

This is based on `Currency` and is not an extensible enum because there is no associated data or logic, ie. it is no more than a typesafe value.
We could have a wikipedia link, but I'm not sure it adds enough value. Its a well enough known code that no one needs to look it up.