Use jump labels for http_decode_buf()

Doesn't make much of a difference but the assembly is a bit nicer.
Replace strftime() with hand-crafted ver

Prelude to replacing snprintf with simple buffer concatenation
Move byte/otherbits in to internal node union

Prepare to make critbit keys binary-safe counted strings
Oops, allow NULL vhost (ie. missing host header)

Use default vhost in that case
Don't use snprintf() to construct HTTP responses

Improves performance, but also necessary for the case where we want
to handle large HTTP response headers (eg. very long URI)