Add fallback options when generating salt #114

when generating salt we try openssl first, then mcrypt
and as last resort mt_rand

Refs: #114