Gearpump resource scheduler

extract scheduler implementation and abstract resource respresentation