reworked api response graph

New graph widget, total reworking of response caching
to avoid mutation of the cache while iterating. All timed responses
now added to an event queue, which the APISamper processes and updates
the graph with.