Refactor into a Intl format memoizer

**This is a major-version level refactor.**

This refactor proposes a shift in the role of this package in the overall FormatJS system to a memoizer of `Intl*` format instances.

These change mean that this package no longer has dependencies on the `intl-*` packages, as the template/component integration layers should be the packages with those dependencies.
If `JSON` is undefined, won't this throw a ReferenceError?