Fixes #2053:

1. CPasswordHelper has been refactored.

2. CSecurityManager has been enhanced and now able to generate
cryptographically strong random stuff.
UPGRADE note related to #2053.
CSecurityManager:

1. Added /dev/urandom usage.
2. A couple of minor code optimizations.
Non-blocking read from /dev/random is not supported by RedHat 6.*.
Minor CS fixes and @throws docblock clause added.
Docblocks fixes and other minor adjustements made.
Fixes:

1. Blowfish salt should have "./0-9A-Za-z" alphabet and should be 21
characters long. Proper format is: $2a$nn$xxxxxxxxxxxxxxxxxxxxx$

See: http://us2.php.net/crypt

2. CS fixes.
Removed unnecessary output.
Merge pull request #2604 from resurtm/fixes-2053

Fixes #2053: refactor CSecurityManager and CPasswordHelper