html 5 and ecmascript5 shim/sham/shivs

So that we can be compatible with older IE browsers.