Fix for python3
Use PBKDF2 from hashlib when available
Test coverage with both python 2 and 3
Refactor+fix PBKDF2 and test counts other than 1