resource requirements tests and fulfilment
separate graph for each bound resource

* refactor Resource.dispatch_request
* style