WIP
Add support for using multiple SMCP instances on different threads.

There are a few other issues that need to be worked out for
absolute thread safety (specifically the duplicate packet
detection code), but I'll leave that to a future commit.

Closes #13