* Preserve interface of std::condition_variable through "perfect
forwarding"
* Decouple SignalHandler and AtomicCondition
* Callback function for signals
* Improve readme
* Bump version to v0.2
* Fix race condition in wait_for between calling atomic load
and condition_variable::wait_for, by protecting atomic store
with same mutex as AtomicCondition::wait_for.
* Subsequently, simplify the interface by removing notify_{one,all}.
condition_varaiable::notify_all is now automatically called in
`AtomicCondition::set(val)`.