Implemented a new ICryptoType: ElGamalCryptoType, and fixed relationships between ICryptoType/ByteCrypto/etc.