+ added polyfill for binding function scope from Mozilla's Developer Network: https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Function/bind