Cleaned up the set of call() overloads;

Added when_all for a single async_io_op.

Added new test case to test the new barrier() implementation. Unfortunately it triggers the memory corrupting packaged_task in Boost v1.53 :(