crypto: introduce ECDH

cc @trevnorris 
`function ECDH()` is not exported, and only accessible via `createECDH()`. Which always returns `new ECDH()`. So no need for the `instanceof` check.