Named log levels via new loglevel class

Fixes #4.
This is not supposed to be accessed outside of the package's scope. Perhaps we need a function `available_log_levels()`?