* Check that the protocol is TCP
* Support all HTTP methods
* Clear out tasks from table when they exit (required using task ids as table
keys). A nice side effect of this is that we can tell apart tasks receiving 0
req/second (i.e. tasks which currently aren't receiving any requests but were
receiving requests at some point) from tasks which don't exist anymore.
We report metrics fro the former.
* Simplify hash table key (no need to use a struct)