Accumulator refactor:

Stores a single copy of each request from different sources.
Firewalls identical requests.
Implements time based eviction policy.
Tests.
I think the idea is that we win nothing by avoiding a copy in this case; it's as cheap for the compiler to copy an integral value as it is to take a reference, so we go for the less verbose option.