Ed25519 support

Basic support for Ed25519. Many of the APIs are marked as pending as I think we can do better in terms of serialization/deserialization.

Also still needs documentation.