Fix bug: Destroying a driver with outstanding asap events would loop.

And eventually crash.
Nit.
Deprecate tamer::distribute; favor tamer::operator+/tamer::all.
Add tamer::driver::next_wake().

This returns the next time a timer will wake up, or 0 if Tamer
won't block, or -1 if Tamer would block forever. Only implemented
in the tamer driver.
Avoid warning on mac.
Nits
Tamer driver: Don't use tamer::recent() before blocking.

Too likely it's out of date, perhaps by a lot. Get the true
current time.
Tweak test to work more reliably on mac.

Which sleeps for too much time.
Error constants cannot be relied upon.