Adding a more throughput oriented benchmark

Sending and receiving batches of 100 messages. Not an awesome
benchmark, I guess, but probably less latency bound than sending and
receiving individual messages.
Type class cleanup

Removing unneccessary type classes and cleaning up function declarations.
Removing unneeded suffix from c_nn_recv

Had two bindings with slightly different signatures
for the receive function a while back.
Some doc/metadata cleanup
Exporting typeclasses to improve haddock output
Adding accessor and mutator for Surveyor timeout