Added pbkdf2.  The whole function pointer thing bothers me :(