Debounce concurrent requests

This PR makes concurrent requests to the same resource only make one request (i.e. if you accidentally request the same avatar PNG 5 times, you'll make one network request and hand the result to five people)