split pluggable normalization hook and normalization api.

The public API `Container#normalize` should benefit from caching even when a resolver provides its own normalize method, as ember-cli’s resolver does.

This commit ensures all `Container#normalize` calls are cached and share the same cache as internal container normalizations. This is a performance boost
for ember-data.
Merge pull request #5296 from stefanpenner/cache-more-normalizations

split pluggable normalization hook and normalization api.