Merge pull request #9 from jdnavarro/master

ECDSA support
require crypto-pubkey-types 0.4.1 minimum
DH: generate a private key that is in the proper range
bump version to 0.2.3
use the non-legacy crypto.random modules everywhere.
rename generatePublic to calculatePublic.

add compat so it doesn't break any working code.
add methods to generate private and public numbers.
bump version to 0.2.4