javascript polyfills, shims, shivs and helpers