Support late-binding of log levels

Previously, the early calls to setLevel in configure would be
impossible to un-do, which makes modifying logging behavior from any
kind of user provided option a pain.

Fix this by tracking the handler references added to the logger and
mutating them at a caller's request.  All these steps are encapsulated
and indirected through the procedure set_level.

This obsoletes the old MINIMUM_LOG_LEVEL module global assignment
approach that was introduced for this reason, but unfortunately
obsoletes a test that was easier to write with that approach as well.

Reported by Greg Stark <stark@heroku.com>