Emit error when `algo` function does not return a string; Add docs for `algo` as a function; Add tests for `algo` function and unsupported hashing algorithms; Refactor error instantiation; No longer expose config object as the thisBinding of the config function options; Reduce number of plugin-wide vars