Partner Monitoring

Pretty big PR.  Didn't squash because there are several upstream merges.

* Adds a "Monitoring" tab and enables pulling-in New Relic and/or AppDynamics monitoring support
it looks like only a few fields/methods are used outside of this file, but you're exporting everything in the singleton above from the module? an alternative approach is to just alias the few things which are in fact needed. like
```
return {
  configured: appDynamics.configured,
  enabled: appDynamics.enabled
};
```

or whatever it is.

The Singleton thing isn't really necessary - you could just make everything be in module scope so the module itself is the singleton - the reason Singleton exists is mostly that if you have a superclass and you want to derive from it, you can't have a module that derives from a superclass, so you need the Singleton thing.