test: check cpu hit counts >= 1

The test that they are exactly 1 seems fragile, they are usually 2 in my
environment.
Merge pull request #77 from strongloop/feature/fix-cpu-prof-tests

test: check cpu hit counts >= 1
test: remove extra strong-supervisor from message
test: print SL env vars from module-app
test: always print exit status
run: make statsd flush interval configurable
run: metrics scope is no longer configurable
bin: rename .usage files to .txt

.txt files are easier to work with in editors, and they are text files.
run: support multiple --metrics backends

All supported metrics backends can be used simulataneously, and the
internal metrics are always forwarded to a node parent process, if the
IPC channel exists.
run: fix appname when not profiling

The agent caches cwd()/package.json's app name when required, so its
important not to require it until run has changed to the target
directory. If --no-profile is NOT provided, then agent.profile() is
always called in the app's directory, so will pick up the correct
appname later, but with --no-profile, this doesn't happen, and the
appname would either be undefined, or if you happened to have a
package.json in the directory you were running from, it would use that
app name... but only for the master, the workers would have the right
name.

Note that since I usually run test-run-metrics from the supervisor root,
the master's appname was being set to strong-supervisor, from the
package.json in the supervisor's root, which I mistook for a feature,
until I used the tap runner, and the appname was undefined, because the
tap runner changes into the test/ directory before running, where there
is no package.json.
fixup, README for metrics option
fix