adding in curve25519 implementation