Forked from https://bitbucket.org/tehrengruber/es-js-hash