Polyfill for Function.prototype.bind. (Source from developer.mozilla.org)