Rename ChannelConstants to PaymentException and throw it instead of IllegalArgumentException when the wallet returns an error on payment.
Payment channels: from scratch rewrite of the integration API and a simpler TCP wrapper class that is moved out of the integration lib (as I guess in reality most apps will embed the protocol rather than run it over a raw socket).