Don't polluate Country

Move all methods into extensions
Provide extension support