Add log() functions
Split Logger.prototype for clearer separation