logging: make formatting more consistent

All arguments to `logging.*` methods are now equal: there's no requirement
that the first be a string - arguents are just passed to the underlying
console method (aside from quasis).

get/setFormat has been renamed to get/setFormatter. `format` is no longer
a `string.supplant` style string, but a function that returns an array of
arguments to pass to the underlying log method.

See the updated logging docs for more info.