1. Provide functions to log arbitrary messages, filtered according to a section and a verbosity level.
2. Allow to setup destinations for these log messages.
MERLIN_LOG environment variable and -debug commandline flag are used to determine destinations.
Module sections, to group messages along functional lines.
monitor ?dest section starts the monitoring of
dest is set then all subsequent logging related to
section will go in
that file, in the default destination otherwise.
dest is omitted and the default destination is not set,
Invalid_argument is raised.
Closes all the open channels, unsets the default destination and stops all monitoring.