Add a variant of evhttp_send_reply_chunk() with a callback on evhttp_write_buffer()

evhttp_write_buffer() used by evhttp_send_reply_chunk() can take callback
executed when (part of) the buffer has been written. Using this callback to
schedule the next chunk avoids buffering large amounts of data in memory.
Allow registering callback for parsing HTTP headers

Slightly changed version of Espen Jürgensen's
commit 548141e72312126fa6121f6a5f436đ251c7fb1251 for forked-daapd.
Fix a typo
Document deferred eventcb behaviour
Add watermark introspection
Add an option to trigger bufferevent I/O callbacks
Add an option to trigger bufferevent event callbacks
Clarifications in response to merge req. comments
Merge remote-tracking branch 'mistotebe/bufferevent_trigger'
Make bufferevent_trigger_nolock_() inline

Since most of its callers are using constant EV_READ or EV_WRITE, and
using constant 0 as its argument, this should eliminate most of the
overhead for this function in the fast case.
Minor optimizations on bufferevent_trigger options

By making BEV_TRIG_DEFER_CALLBACKS equal to BEV_OPT_DEFER_CALLBACKS,
and BEV_TRIG_IGNORE_WATERMARKS disjoint from BEV_OPT_*, we can save a
few operations in bufferevent_run_*, which is critical-path.
Merge remote-tracking branch 'rbalint/from-forked-daapd'