Adds i18n detection

Some browsers don't support the locale and options arguments for toLocaleNumber and this is a simple way to format currency... It seems that Intl.NumberFormat is the basis for toLocaleNumber, but it's probably to have two sets of detection...