instrumentation: add default port for http.request

Even though we added logic to explicitly barf if instrumentOutbound gets
called without a port set, we forgot to make sure that there would be a
port set from wrapRequest.
docs: fixed typo

Thanks to Stefano Valicchia for pointing it out!
instrumentation: too much caps!

Minor consistency enforcement.
test: add tests for createClient assumptions

we assume that createClient will always return an object with 'host' and 'port' set appropriately
docs: corrected errant normalization rule
config: ensure errors get sent after first harvest

The agent replaces the error tracer with each harvest cycle, but the
transaction listener was only getting bound at agent instantiation,
which means transactions were getting funneled to the first error
tracer, preventing subsequent error tracers from noticing any errors on
those transactions.
config: env overrides file overrides defaults

Instead of trying to be clever and concatenate list values together,
which made it impossible to override default values in lists (e.g. the
HTTP status codes to ignore), just overwrite them when overriding. So
the configuration file values will overwrite the defaults, and the
environment variables will in turn overwrite the config file and
defaults. The only exception is configuration coming from the collector,
which is additive. This is actually a little simpler, but there's still
a lot (too much?) going on around these multiple levels of
configuration.
deps: update to newest version of CLS
docs: updated for new version
release: published 0.11.7