Commit Briefs
add a configure script and some compat
tested on openbsd, alpine and void
improve logs
now we log the full IRI requested (before was only the path) and the response line (even for CGI).
drop useless field
was probably added to distinguish between AF_INET and AF_INET6, to use different functions for logging. But it wasn't really used, and now we use getnameinfo anyway.
improve mime handling
we still have an hardcoded list, but this implements the API needed to modify the mappings.
reorganize: move bunch of functions to server.c
cgi.c wasn't really needed; it better to group all the server related functions together, cgi or not. Now gmid.c contains only startup and utility code.
split into two processes: listener and executor
this way, we can sandbox the listener with seccomp (todo) or capsicum (already done) and still have CGI scripts. When we want to exec, we tell the executor what to do, the executor executes the scripts and send the fd backt to the listener.