No need to set constructor on prototype
Be more friendly for extensions
Derive primitive set from polyfill