Add support for testnet, litecoin and dogecoin addresses.
Add option to specify private and public key prefix bytes, in the
case that they cannot be determined for raw keys, which is necessary to
unambiguously support network types other than Bitcoin.
Update tests to use explicit prefix in the case of raw key tests.
Update tests to include testnet, litecoin, and dogecoin key
manipulation.