Add Curve25519 implementation.

This implementation is not from TweetNaCl, but from the original
NaCl/ref, because it uses 32-bit arithmetic.
Implement crypto_box_* and box.seal/box.open.