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), if `parse256(IL) ≥ n or ki = 0, the resulting key is invalid, and one should proceed with the next value for i` is now adhered to. 

* In the [Public -> public case](https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki#public-parent-key--public-child-key), if `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` is now adhered to.

In general, there was also a clean up of variable names and inline BIP32 documentation.