bufferutils: return opcode for use
ecdsa: serializeSig should return a Buffer
ECKey: adds test to ensure throws on negative D
ECKey: use signum over compareTo
base58: use signum over compareTo
ECKey: ensure throw is from ECKey
base58check: buffers only, remove explicit 0

Undefined is treated as zero if it ever gets to this point anyway, so no
value is added by having this default param here.

A test fixture to verify this behaviour is added.
Address: Expected T, got PARAM for Buffer assertion
base58: cleanup variable names

The encode/decode functions are also now similar syntactically.
HDWallet: use assert.throws
HDWallet: moves fromBuffer tests to data driven style
HDWallet: remove unused imports
HDWallet: remove getKeyVersion
HDWallet: use new constructor
HDWallet: remove repeated assertion
HDWallet: extract BIP32 params search function
HDWallet: adds PubKey validation
HDWallet: more explicit branch for parentFingerprint
HDWallet: improve testing coverage
HDWallet: fix test data descriptions