now using crypto/rand, documentation updates