pbkdf2: fix key stretching

Uses the implementation of PBKDF2 from pbkdf2-compat package.

Fixes the following problems with the previous implementation:

* `createHash` undefined 
* `alg` undefined
* removal of inner-loop conversion of `salt` to `Buffer` (was implicit with `.update(salt)`)

Alternatively, I can fix these manually; this was just quicker as I already use `pbkdf2-compat` for other projects.

OR, rather than copy the code, you can [include the package directly](https://github.com/dcousens/crypto-browserify/compare/dominictarr:master...dcousens:pbkdf2?expand=1).