Unify the random number provider
The three functions has been modeled after the arc4random family of functions, and they will always return random bytes.
The isc_random family of functions internally use these CSPRNG (if available):
- getrandom() libc call (might be available on Linux and Solaris)
- SYS_getrandom syscall (might be available on Linux, detected at runtime)
- arc4random(), arc4random_buf() and arc4random_uniform() (available on BSDs and Mac OS X)
- crypto library function: 4a. RAND_bytes in case OpenSSL 4b. pkcs_C_GenerateRandom() in case PKCS#11 library
Closes #221 (closed)