Accept multisig addresses that are lists of public keys (instead of pubkeyhashes) for both source and destination.
Minor Tweaks

- Coding style
- Function, variable naming
- Typographical errors

Also, users don’t know if their addresses have been used before, so only
ask for pubkey in CLI if not in wallet *and* not in blockchain (by
search).
Sanity Checking on Public Keys

- Abstracted away sanity check
- Placed check in CLI and API.
Fix tests

- Fix typographical error
- Add mock method for pubkeyhash_to_pubkey
Better Abstraction in API’s Compose Function

- Extract pubkeys from address and convert address to pubkeyhash‐form
  separately.

- Also, bugfix in `cli()`: `address_name` -> `address`
Tests for New Pubkey‐Handling System; Misc.

- `script.is_fully_valid()`
- `script.is_pubkeyhash()`
- `script.make_pubkeyhash()`
- `script.extract_pubkeys()`

* Fixed typos found while making tests.
* Also, slightly improved docstring for `transaction.py`.
* Also, fixed minor regression.

Solves #570.
Moved Functions Requiring Proxy to `backend.py`
Convert to hex string pubkeys returned by the wallet
Additional Unit Tests for `script.py`

Also, minor miscellaneous tweaks to exceptions, handling of hex.
Add new checkpoints

- 335000 and 336000 for mainnet
- 315000 for testnet