Added a NullLogger, made it the default.

This lets us remove several instances of `if @logger &&
@logger.respond_to?(:some_method)`

(https://gist.github.com/ppaul/6540400, #9)