Shave off a few bytes from couroutines in release builds
Only build valgrind stack info on debug builds
Rewrite benchmark.py to use weighttp

Uses the patched weighttp found on git://github.com/lpereira/weighttp.git,
which support JSON output with the ``-j'' command-line switch.
Remove unneeded __coro_* symbols
Fix 32-bit build
Replace some null-checks with assert()s
It is very unlikely str will be null in url_decode()
Handle DIR_WATCH_DEL_SELF
Fix potential null pointer dereference in templating code