Initial implementation of logging

Not sure I like this implementation. In particular, function signatures are lost when they are decorated.

Workarounds are:

+ Use the decorator package, which restores signatures but does an ``eval`` for each decorated function to do so.
+ Automate insertion of the original function signature in the docstring as part of the decorator.