Basic inspecting_client and tests

Seeing as how AsyncEvent mirrored the threading.Event API where it made sense, perhaps we want to use a different name so that people don't expect it to mirror threading.Semaphore. One could rename inc() to acquire() and dec() to release(), but then it would still be a slightly different beast, what with the bit-slicing and all. 

Perhaps call it AsyncBitsliceSemaphore? Or something else :)