Abstracted out Ref and CPortabe gadgets into types in Primitives common across packages
Fixed raaz-hash for abstracted CGadget and HGadget
Added HasInverse typeclass

* It now replaces CipherGadget typeclass as it is more general and clean.
* Also added Cipher data type.
Fixed raaz-cipher to use CGadget and HGadget interface
Added Paddable Gadget for Blake compatibility
Hash fixup for Paddable Gadget
raaz-random bug fixup