use PBKDF2 for BIP39, add unit tests