invalidate sell offer with zero bitcoin amount desired
update reserved funds of old sell offer when accept expires

if sell offer got updated during a running accept against an old sell offer,
drop the reserved funds due to that accept when it expires

discussed on:
https://bitcointalk.org/index.php?topic=292628.msg5487346#msg5487346
update icon color on sell offer after alarm check properly
typo is sell offer icon text
fix reversed sell offer order on bitcoin payment

it caused under certain conditions to a mismatch of accept and sell orders
fix bitcoin payment parsing with multiple inputs
allow zero bitcoins sell offer for action cancel
check previous payments on check_bitcoin_payment
add support for multiple payment on a single accept offer

example:
https://masterchain.info/Address.html?addr=1LifmeXYHeUe2qdKWBGVwfbUCMMrwYtoMm&currency=TMSC
https://masterchain.info/btcpayment.html?tx=d09ffc8f6b41176dc5a63f3110574cc42fb9fa8668b696b63b516bc0206001df&currency=TMSC

Conflicts:
	www/btcpayment.html
add amount bought to bitcoin payment parsing

show on btcpayment view

Conflicts:
	www/btcpayment.html
on multiple payments to accept list, skip exhausted accepts

if accepts is alredy 100% paid, pay the next one
example:
http://masterchain.info/btcpayment.html?tx=5eea7fcad063871ece3404237fb2b5d66cf79b51e371c2f8aef6e7061aacd197&currency=TMSC
fix enforcement of minimal fee on sell accept
invalidate multiple concurrent accepts from the same address

example:
https://masterchain.info/sellaccept.html?tx=263b7c420b2456b3f04eea4d92ddf35b95703859173a321c9fdeb71e6c1f5328&currency=TMSC
set distributed exchange feature active starting at 290630 block
allow sell offer with zero amount when it is a cancel request
invalidate tx with empty from address

examle transaction:
8fba98bc4ec872e8529433d70f1ac4f2724e0f42513214851b8155fa17522e3e
where the input is a multisig address
allow case of different reserved funds and accepted on sell offer update

Such a case may be caused by a bug, but in some cases it is a normal behavior
the trigger for this change is:
https://masterchain.info/selloffer.html?tx=b4fff0b33a547078cbde9a824a71a1d1ecdc6d234c0a2ac5df9123e129fa44a1&currency=MSC
Although transaction got parsed well, the automatic bug alert mechanism prevented
the sell offer from being attached to the seller address, and therefore it was
not available on the user interface, and the reserved funds did not get update.
Any user could have accepted this sell offer if they visited the sell offer
page directly.
invalidate tx with multiple outputs to exodus

if a transaction does not originate from exodus, do not
allow multiple outputs to exodus

example:
https://masterchain.info/simplesend.html?tx=f1a0f43f10c3af7eff7b998ef0eb82f0eb82698f3752b27486e5537895207d51
has 2 outputs of 5460 satoshi to exodus
bugfix: correct expiration of multiple accept offers that expire on a single block

The mechanism that checks expiration of accept offers uses a dictionary
for alarms which contains expration block number as a key and a list of accept txid
that expire at that block.
While iterating on the list, the code removed checked accept txid from that list
In a case where multiple accept transactions expire in a single block, this removal
causes the second accept expiration to be skipped.
specifically, this unpaid accept offer was hanging in a non expired state:
https://masterchain.info/sellaccept.html?tx=5737353a669583964a296ef920837fd97ad5c89c3dee9e8216e674dad5c76c6e&currency=MSC
avoiding the removal of old alerts from this dictionary fixes the problem

This is the only case that such a problem has happened.
The effect was a wrong calculation of the following accept offer (missing 1.3 MSC):
https://masterchain.info/sellaccept.html?tx=d846fd98dcd268f835d272e13b8623fd2ca435060fa91baaf8426bffb067a5b1&currency=MSC
but since we could see that the later payment was correct, and the consensus support it,
I see no problem to correct this problem retrospective.

If the foundation insists, I could still keep the bug until current block.