Add PBKDF2 support to Murmur.
Review and refactor of PBKDF2 support patch.

* Adjusted to coding guidelines
* Pulled out PBKDF2 functionality into own class
* Make benchmark a best of N approach with guaranteed minimum
* Fixed broken database migration code. Don't try to alter
  tables and instead rely on them being re-created with the
  new fields.
* Fixed some typos in ini. Also move to the setting to the
  end so ppl. don't get the idea they have to change this.
* Chose a scarier name for the plain hash function
* Use int instead of size_t for iteration counts as it is
  the datatype used in the OpenSSL API. Otherwise we just
  have to much pain with constantly converting and might
  expose ourselves to size issues in the future.
* Moved new UserInfo enum entry to the end as to preserve
  the order
Fix issues found in review of PR #1422
Fix RAND_bytes return value checking.

That function can actually return -1 if it isn't
supported.
Fix more coding guideline violations.
Use real-name in copyright line.
Merge pull request #1422 from hacst/auth

Use PBKDF2 for user password hashing (2)