Payment channel API. Negotiation af the channel duration.
1. Client requests a time window, in seconds relative to now.
2. Server suggests an expire time, absolute time in seconds
3. Client accepts or rejects the servers proposal.
Note that the IPaymentChannelClient.ClinentConnection interface has a new method. This will break old implementations.
Let the client request the duration of a payment channel. Server can set allowed time window.
Fixed grammar
Always use position 0 for LocalTransactionSigner sig, we don't know in advance what position we'll end up in
Fix p2sh bloom filter construction
Proper signature insertion for P2SH scriptSig
Replace "poor man's (aka. really, really poor) JSON parser" by Jackson for the script and tx tests.

The tests semantics was unchanged. 161 lines of code removed.
Married wallets: multisig threshold could be specified

That allows to create multisigs like 3-of-3. If not specified, majority of
keys will be required (2-of-3, 3-of-5 and so on)
Parse verifyFlags from script and tx JSON tests. Currently, only P2SH is implemented.

Update all script and tx JSON tests from Bitcoin Core.