In order to avoid a dependency on the go.crypto terminal package, let's try to do our own TTY sniffing. I think in practice this will work surprisingly well, even if it feels incredibly sketchy.
I've currently written three: - Request ID generation - Request logging, with color (!) - Recovery from panics