Rewrite a few helpers to be more efficient
Rewrite a few helpers to be more efficient

Resolve at definition time if a browser built-in method or our polyfill should be used, so avoid checking it for each call. Also, `helpers.extend` doesn't need to iterate two times on the function arguments. Finally, remove helpers never referenced.

supernovel/Chart.js,2Ring/Chart.js,Magnetic/Chart.js,supernovel/Chart.js,bokysan/Chart.js,el-ee/Chart.js,chartjs/Chart.js,jtcorbett/Chart.js,touletan/Chart.js,simonbrunel/Chart.js,rvaidya/Chart.js,simonbrunel/Chart.js,touletan/Chart.js,bokysan/Chart.js,touletan/Chart.js,2Ring/Chart.js,Magnetic/Chart.js,salzhrani/Chart.js,panzarino/Chart.js,ritesrnjn/charts,avlcodemonkey/Chart.js,salzhrani/Chart.js,ldwformat/Chart.js,rvaidya/Chart.js,nnnick/Chart.js,ritesrnjn/charts,nicktiberi/Chart.js,jeffesp/Chart.js,amir-hadzic/Chart.js,chartjs/Chart.js,ldwformat/Chart.js,amir-hadzic/Chart.js,avlcodemonkey/Chart.js,ashiguruma/Chart.js,el-ee/Chart.js,panzarino/Chart.js,potatopeelings/Chart.js,chartjs/Chart.js,jtcorbett/Chart.js,touletan/Chart.js,chartjs/Chart.js,potatopeelings/Chart.js,nicktiberi/Chart.js