Implementing a Service that caches requests and then executes on an interval. - C#