Make the default (long output format, UTC time) for the bunyan CLI a
fast path that doesn't use moment.js. Admittedly I haven't measured
percentage impact of `moment(rec.time).utc().format(...)` for
many bunyan records.
Also make moment dep *optional*. The bunyan CLI will error out without
the moment dep *only if local time is requested.*
Bunyan CLI was not handling timezone conversion properly when set to use
local time. This patch uses [Moment.js][] to fix those issues.
* Timezone conversions work properly across DST conversions
* The timezone, when shown, is correctly shown as `±hh:mm`
* The timzeone is omitted on short output, since it isn't that short.
Except when UTC is used, since that can be indicated by the single
character `Z`
Fixes#245
[Moment.js]: http://momentjs.com/
Change default condition evaluation from vm.runInNewContext to
eval-style functions. Use of "naked" variables (pid === 123, etc) no
longer works, making this.<name> variable qualification necessary.
Change test to look for new ENOENT error message changed in recent
nodes:
// Note: node v0.6.10:
// ENOENT, no such file or directory 'asdf.log'
// but node v0.6.14:
// ENOENT, open 'asdf.log'
// Somewhat annoying change.