Print indication when waiting for another tup instance

If another instance of tup is running somewhere (e.g. an autoupdating
monitor), running a second instance of tup will wait silently until the
first process finishes. This can be confusing and make users think that
tup has hung for some reason.

This commit adds a tup_try_flock method that allows tup to print a
message indicating why it's waiting.

The windows code is untested (don't have a box to test), but if my
reading for the MSDN docs is correct, it should work. It's not a very
complicated bit of code.