mk_queue: Return early if queue is empty.
mk_protocol: Add response_post hook.

Called whenever content is added to request or request is ended.
mk_http: Put connection to sleep while plugins work.

Sleep connection if trying to process request with handler which is not
yet finished.
Wakeup connection in response_post protocol hook.
mk_epoll: Use ptr instead of fd as event data.
scheduler: Remove mk_sched_connection_timeout_check().

Duplicate functionality.
sched: Use pointers to sched_connection.

Alloc each sched_connection instead of keeping them in array on
sched_list_node.
Resolves some thread memory conflicts.
benchcache: Free configuration.
sched: Drop alignment specifier on sched_connection.
ring: Add ring queue implementation.

Defines non-atomic, spsc atomic and mpsc atomic ring queue
implementations.
sched: Remove unused variable request_handler.
ring: Change prototypes. Fixup.
sched: Add ring queue for resource reuse.
log: Fix cleanup.
plugin_next: Add mk_plugin_next_exit().

Calls exit() hook on each plugin and free their memory.
monkey: Call mk_plugin_next_exit().
plugins: Remove use of mk_plugin_del().
mk_ring: Fix non-atomic ring dequeue.
mk_protocol: Free resources if protocol init fails.
mk_socket: Don't reset socket flags in nonblock.
http_transort: Don't search for Content-Length header.

Assume that there will never by any Content-Length header generated.