I can't understand why badges/{ids}/recipients returns badges and not users? You must pass the badge ID in, so it should be given that you already know what the badge is. If it returns 30 objects you get 30 copies of the badge data. That doesn't sound very efficient, especially given that a lot of changes in v2.0 have been about making things more efficient.
Surely it would be better just to return user objects? If a copy of the badge must be returned then add a field called "context" as a sibling (at the same level) as "items"?