Adding Hash() and Random() to the crypto libraries

A function, Random() has been added which takes as input a number,
indicating the number of random bytes to produce as output. Random()
returns that volume of random data, and any errors that occured in the
process of random number generation.

Additionally, Hash() has been added, which takes as input a byte slices
and produces as output the sha256 hash of that byte slice.

Finally, an error in the package declaration has been fixed, changing
the declaration from 'package common/crypto' to 'package crypto'