Add multiple country support

Adds support for non-US countries and will fallback to US if a country isn't specified.

Also added a check that a callback function exists before calling it.