test: delete STRONGLOOP_METRICS after each test

Leaving an invalid STRONGLOOP_METRICS in the environment causes
subsequent tests to fail.
run: directly support statsd backends

For new metrics URL formats, start a statsd child process, and use it to
deliver metrics to (at this moment) splunk, console, graphite, and
syslog.
Expose worker log transformer/wrapper via config
Use --log mechanism for statsd process
run: exit if metrics URL is invalid
Merge pull request #65 from strongloop/feature/statsd

run: directly support statsd backends
Merge tag '1.1.1'

v1.1.1
test: cpu profiling now works on v0.10

strongloop/strongops#2ba8228b84cfbebd44e103ccb78da676a2c7b40a added cpu
profiling support for v0.10 in strong-agent v1.0.3, so remove the code
dealing with it not being supported on some node versions.
Merge pull request #71 from strongloop/feature/cpu-prof-on-v0.10

test: cpu profiling now works on v0.10
package: strong-agent-statsd is not directly used
metrics: forward internal metrics to parent

Forwarding is fairly transparent. If there is a statsd child, and if it
emits metrics, and if we have an ipc channel to our parent, we notify
the parent of the metrics. Otherwise, we don't.
Merge pull request #70 from strongloop/feature/fe-metrics

fe-metrics
Add IPC notifications for tracking and profiling
metrics: deal with app and host names with a `.`

Do not allow dots in our app or host name substitutions, they mess up
the statsd metrics hierarchy, which uses `.` as a separator.
Merge pull request #74 from strongloop/feature/fix-dots-in-expansions

metrics: deal with app and host names with a `.`
runctl: add timeout arg to start-cpu-profiling

Add a timeout argument to the start-cpu-profiling command that starts
the profiler in watchdog mode.  Depends on strongloop/strongops#221.
Look for package.json to determine app root

Currently when given a path to a file such as in
`sl-run path/to/some/app.js` the behaviour is to mimic
`cd path/to/some && node app.js`.

Since normal `npm start` behaviour is to cd into the package's root, it
is desirable to look for the `package.json` nearest to the given app.js
and chdir into that directory, using the original behaviour as a
fallback when not `package.json` can be found.

Given that these paths exist:
path/package.json
path/to/some/app.js

`sl-run path/to/some/app.js` should do `cd path && node to/some/app.js`
test: more explicit argument parsing

Ensure that long paths don't trigger console.log/util.inspect wrapping,
invalidating tests.
Support running app.js as 'sl-run app'

Make sl-run behave more like node by allowing .js file extensions to
be omitted.

Closes #11
test: check cpu hit counts >= 1

The test that they are exactly 1 seems fragile, they are usually 2 in my
environment.