ECPair: replaces ECKey/ECPubKey

This is a `2.0.0` PR.

Mostly just wanted opinions on this design vs the original `ECKey`/`ECPubKey` design.
I personally prefer it, and the semantics are quite strong so despite the optional constructor argument either way; it does make life a lot simpler.

It also simplifies a fair amount of code IMHO.

Open to comments/discussion. @weilu, @jprichardson?
They might want to supply one and explicitly omit another, in which case I'd expect both `null` and `undefined` to work