HDWallet BIP32 adherence

Depends on #173.

This pull request makes the following changes to the child key derivation function:

* In the [Private -> private case](https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki#private-parent-key--private-child-key), the following is now adhered to:
> parse256(IL) ≥ n or ki = 0, the resulting key is invalid, and one should proceed with the next value for i 

* In the [Public -> public case](https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki#public-parent-key--public-child-key), the following is now adhered to:
> parse256(IL) ≥ n or Ki is the point at infinity, the resulting key is invalid, and one should proceed with the next value for i

In general, there was also a clean up of variable names and inline BIP32 documentation.
The `HmacSHA512` input was also restricted to only accept `Buffer`s.

Also included was further removal of `convert` functionality.