Split and rename.

curves.js split into few different files. Main entry point
changed to be lib/index.js.

Priv and Pubkey moved to separate files.
Add Message model to handle PKCS#7 message
Add key deriviation support.

Priv key model now provides Diffie-Hellman shared secret generation
and DSTZSI-comapible key deriviation.