Fixed resource role bug to support reservations.

We can't assume that a resource offer contains a single offering per
resource.  With roles, there may be more than one offer per resource and
per role.

I've tested this in our staging cluster.

@andykram @florianleibert