Fix keys

This fixes the previous problems in generating addresses, exporting or loading private or public keys, and adds support for compressed WIF and compressed public keys.

The important change to fix address generation and `from_hex_key` loading was fixing a previous misunderstanding of what the leading byte in a hexlified public key meant. I thought it was supposed to the the network version byte, but it's actually an identifier for the type of public key (compressed or not). See https://github.com/sbuss/bitmerchant/compare/fix_keys?expand=1#diff-d7df835b36fd8354931c1a697a0d52f4L196

Support for compressed WIFs and compressed public keys is now tested in `tests.test_keys.TestVectors`, taken from the bitcoin source.