Adds bugsnag and newrelic metrics and error reporting

Configuration variables are added under the REGISTRY_REPORTING
namespace, for example REGISTRY_REPORTING_BUGSNAG_APIKEY
Updates configuration tests for bugsnag and newrelic params
Merge pull request #849 from BrianBland/ng-error-reporting

Adds bugsnag and newrelic metrics and error reporting
Relax requirement for size argument during blob upload

During client implementation, it was found that requiring the size argument
made client implementation more complex. The original benefit of the size
argument was to provide an additional check alongside of tarsum to validate
incoming data. For the purposes of the registry, it has been determined that
tarsum should be enough to validate incoming content.

At this time, the size check is optional but we may consider removing it
completely.
Port client to use URLBuilder to create urls

This change ports the client use the URLBuilder to create urls. Without this,
it produces broken urls for certain use cases. The client has also been updated
to no longer use the size argument to complete blob uploads. Much of this work
has been done after testing with the staging registry instance.