adapt TransportExecutor to be able to create and run tasks dynamically

and streamlined the Task interface and usage