Issue23 callable distributor

this merge fixes issue #23 

It adds the new abstraction and unit tests for it.