Semantic logging
This is supposed to be a better version of !356 (closed) based on comments there ... I didn't feel comfortable moving the whole project to Logs because they have a different set of logging levels and they don't seem completely happy with their Lwt story yet, but I tried to be future-proof by doing things as compatibly with Logs's interface as I could on top of the old backend. In particular, I used a very close variation on Logs's tags system for the semantic information, but I added some syntactic shortcuts to make it easier to send the same information both as tags and in the log message.
Edited by James Deikun