(3) Make Logging Better :) it is currently.. not it. not very good. i'm okay with no tracing crate here, just log nicer. and include the current datetime. (4) Harden Code it can still be soft :) it just needs to not crash so much! well, there are a lot of unwrap and places it can go wrong. make it less likely to crash, especially in the module call code where a panic can bring us down. can we `std::panic::set_hook` or maybe a `catch_unwind`? there are complications with the first one, but perhaps we can make it work? (5) Crate For The Module System so we don't have to copy the weird structs. and also so maybe we can make it safer? A C header, too, maybe? that just define the struct. and really some kind of documentation, probably. DONE :) DONE :) DONE :) DONE :) DONE :) DONE :) DONE :) DONE :) DONE :) ======================================================================= (1) Support Multiple CGI Scripts This is needed even just for the cgit and git server target. We need to be able to support the cgit executable itself, and also git-http-backend for smart clones. (2) Support Matching CGI Based On Path The other requirement for git-http-backend, which needs to trigger on the regex `/.+/(info/refs|git-upload-pack)`