Subkey path

Adds `get_child_for_path` which accepts a path of children to derive.

This uses the same shortcuts that both pycoin and moneytree use (`p` or `'` for prime children, `M` or `.pub` for nodes without private keys).

While testing this method I discovered an insidious bug in restoring PublicKeys from compressed hex form. It turns out I wasn't properly considering the parity of the `beta` parameter. I double checked my implementation against pycoin and found what I did wrong, added a test, and fixed it.