Refactor pipeline

Remove PipelineElementExecutor. There is no need to abstract
TaskLoop operation.
Take the load/store pipeline public through Transport. The dedicated
field is added in the pipeline to hold IO stage. User can't touch the
stage.
Fix runaway loop

-1 by nano second is treated as 0 by second. So use nano second
value to judge wait or no wait.
Add Buffers#wrap(byte[])
Reuse TaskFuture if the task is retried later

User can't cancel the delayed task if TaskFuture is recreated.