expand logging to not be limited to strings

Previously, doing something like `this.log(true)` threw an error. Now it will behave more like console.log.

Also, I don't think the ctx check was really needed and in fact probably hurt more than it helped.