Fixed bugs in the opencl test

The test now works on GPUs with fewer than 512 work-items and
on iMacs with ATI GPUs.
fixed issue with serialization of empty any tuples
fixed initialization order in broker

this patch fixes a bug that could cause brokers to halt
refined `detail::valid_input_predicate`

this patch allows typed_behavior to handle multiple message handlers
using the same input types but different output types;
however, sync_send(...).{then|await} are not ready for multiple
result types yet
fixed memory leak in memory_cache
give more opportunities for work stealing