[Qt] payment request work - part 1

I'm going to once more dig into our payment request code to better polish and add some more things to it. This is just the start and I intend to create some small pulls and not a big one, so it's easier to review and merge. After I get an ACK for this I will add a cleanup commit to this one, which I leave out for now.

For reference the BIPs:
https://github.com/bitcoin/bips/blob/master/bip-0070.mediawiki
https://github.com/bitcoin/bips/blob/master/bip-0071.mediawiki

@laanwj Perhaps you can help me getting this done smoothly :)?
@fanquake After the initial work here, do you want to participate by converting the paymentserver and paymentrequestplus files into the doxygen format after I got ACKs :)?
**However**, as the network is a 'sequential device' it is possible for `readAll()` to return more bytes than `size()`, for example in the case that no ContentLength header was passed. `size()` is effectively useless in this case and just returns how many bytes are in the buffer now.
A more robust way would be to do `read(BIP70_MAX_PAYMENTREQUEST_SIZE + 1)`, and then check for `>=BIP70_MAX_PAYMENTREQUEST_SIZE` received bytes.