Allow user to patch in custom sendmsg and recv implementations.

Default versions just calling the system sendmsg and recv functions are supplied, leaving the library behaviorally identical by default. Being able to do this is helpful for integrating libtrading with other libraries or languages that have their own event loop and/or I/O subsystems. This pull request only applies to the FIX protocol; adding similar hooks for the FAST protocol is not difficult but more hooks may be required.