Document code and improve logging
Add ach_cancel() function

* Sets a cancel field in struct ach_channel and broadcasts on the
  condition variable
* To permit calling from a signal handler, will optionally fork() a
  child process to manipulate the mutex and condition variable
Document ach_cancel() in the manual