Merge bug in the memory instance for random
Added cryptoBuffer which are CryptoPointer with the associated size
Added safe version of Parse and Write
Fixed imports for Parse/Write according to name changes
Merge safe version of write and parse
Changed design of Cipher type

* Removed mode from cipher as stream ciphers have no associated mode.
* Now mode will be captured in the cipher name.
Fixed AES according to Cipher datatype change
Added tests for gadgets with HasInverse
encrypt . decrypt == id test added for ciphers
Salsa20 eStream cipher

* Implemented Salsa20/20, Salsa20/12, Salsa20/8 in pure haskell.
* Added ecrypt test vectors
* Moved AES tests to its own directory
Changed name from sizeOfBuffer to maxSizeOf in Bufferable
Benchmarks in raaz-ciper organized
Changed benchmark not to include finalization step as it is not required while benchmarking
Salsa20 CPortable added
Salsa20 CPortable tests added
Benchmarks added for Salsa20
Added more info on benchmark size in raaz-cipher
Added test and benchmark files in raaz-cipher.cabal
Merge Salsa20 cipher added.

- Some changes in the Cipher interface
- Salsa cipher added.
script to build platform specific make files

We use make file constraints to make sure that builds use a particular
version of GHC and the assocated packages. The script cabal-config is
now renamed to platform to do the necessary stuff.