This will have multiple benefits:
- Abstracts away specific transport layer
- Allows us to switch to MessagePack, which is much more efficient than JSON
- Removes the need for a custom named pipe based channel for transfer of large binary data
- Removes the need to pool connections