Amounts

These new, unified routines pass all the unit tests `btc_to_satoshi` and `satoshi_to_btc` used to pass, plus they now support the extra features of `parse_amount` and `format_amount`.