Add generic PoolingTask

use it in PulpTask
use new phase creation method in RemoteAction