Make Crypto::random() more reliable on Windows

This patch makes openssl the preferred source of random data on Windows and will only use mcrypt_create_iv on PHP 5.3.7 and newer.

Fixes #771