Renamed the options as initialOptions in the top scope

In a slightly silly move, I managed to just re-assign a cloned
version of an object to itself *in the same scope* as it originally
was.

Called the two variables different things to avoid this problem.

Some items of cleanup too:
* Added 'use strict';
* Removed this.config and this.add, since the object they would
  be added to would be either A) the global object, or B) an object
  that would be thrown away.

whether A) or B) depends on whether you call logger with new.

* removed exports.logger.add = exports.logger.add.  There's no add
  method on logger.