RFC JSONRPC ZeroMQServer

I'm not sure if this is something we would want? Basically its an alternative to the web and  tcp server which is much easier to use as it both provides framing and is bidirectional.

Some benefits with ZeroMQ
* ZeroMQ supports many transports, both TCP, IPC and in memory. So it could be useful to further extend this for out of process stuff. So a big upside is that we could have IPC enabled by default
* ZeroMQ abstract uses a composite pattern, so its usually transparent if your getting data from many clients or if your sending it to many. So this could be a great start to create a distributed xbmc were we talk lots between different xbmc machines (obviously this is possible with tcp also, its just easier with ZMQ).
* ZeroMQ has libraries for many languages and could provide a simple base for third party were they get the benefits of the TCP server but with a very simple API to send and receive the data, essentially all they need to do is parse and handle the jsons
By the looks some of these includes are superfluous (i.e. can be in the .cpp if needed)