Payment channel API, client suggests channel time window

Lets the client request the duration of a payment channel. Servers can accept or deny the request.
The client's version message now takes an optional time window parameter. It defaults to 24h - 1 minute.
The server will by default allow channels to have 4 h to 1 week time window. There is a hard limit of 2 h on the server minimum time window, causing a IllegalArgumentsException, since it takes about 2 h to close the channel.
You might want to use Utils.setMockClock() in setUp here .That way you should get rid of the spurious test failures that can occur on the second boundary because the clock won't move after you call it.