Some more OS X changes.

The result of these two commits actually compiles on OS X. I do think the basename_r thing is ugly but it was the simplest fix I could come up with. 

Still some warnings though:
/Users/spaans/xsrc/reass/lib/tcp_reassembler.cpp:78:39: warning: format
      specifies type 'long' but the argument has type '__darwin_suseconds_t'
      (aka 'int') [-Wformat]
        sprintf(buf, "%ld.%06ld", tv.tv_sec, tv.tv_usec);
                          ~~~~~              ^~~~~~~~~~
                          %06d
1 warning generated.

and several cases of stuff like
/Users/spaans/xsrc/reass/demo/reorder_main.cpp:108:78: warning: format specifies
      type 'long' but the argument has type 'uint64_t'
      (aka 'unsigned long long') [-Wformat]
  ...not parse line %ld, no [ at start of line", line);
                    ~~~                          ^~~~
                    %llu

because a long is apparently not 64 bits on OS X.