Add phpass 0.3, downloaded from http://www.openwall.com/phpass/

This is public domain code, written by Solar Designer <solar at openwall.com>
Switch to a phpass based password hashing system, replacing the previous md5 with site wide salt method.

See discussion at http://www.concrete5.org/developers/bugs/5-6-2-1/more-secure-password-hashing/
Update tests to match new password rules: max length 128 instead of 64, and more characters allowed in passwords.
Move PasswordHasher Init to Lazy Loading

As the `User` can `UserInfo` objects are instantiated quite often. There
could be unneeded performance impact.

- Change to lazy load in the `User` model
- Remove from `UserInfo` as the `User` model is already instantiated and
  available to the `UserInfo` model via `UserInfo::getUserObject()`
- Corrent issue with `$hasher` was not yet created.
Add PHPdoc to getUserPasswordHasher
Fix uninstantiated User object in static method

- Do not use `User` object hash object as not yet instantiated
Fix typo in getUserPasswordHash
Merge branch 'use-phpass' of https://github.com/bdsl/concrete5 into bdsl-use-phpass
tweaks to encryption, jobs, tokens; removing need for old password salt
Merge branch 'master' of github.com:concrete5/concrete5