fix check for undefined instead of false value for logger

Fixes #583

Not really sure how to check the output of console.log for this.
Here is the test you need:
```
it('substitutes strings correctly when context argument is falsey', function () {
  var logMessage = '',
    stderrWriteBackup = process.stderr.write;
 
  // Mock out stderr (that gets used by the logger) to assert the logged output string.
  process.stderr.write = (function (write) {
    return function (str, encoding, fd) {
      logMessage = str;
    };
  }(process.stderr.write));
 
  this.adapter.log('Zero = %d, One = %s', 0, 1);

  // Restore function back to the original.
  process.stderr.write = stderrWriteBackup;
  
  assert(this.spyerror.calledOnce);     
  assert.equal(logMessage, 'Zero = 0, One = 1\n');
});
```