Don't rely on `this` to reference the current client

When using the opbeat node client with certain 3rd party modules, the
`this` keyword inside the client would be bound to another object. This
would result in errors like:

    TypeError: Object [object Object] has no method 'process'

An example of this issue would be when using the `common` module like
so:

    common.step([
      function (next) {
        next(new Error('Some error'));
      },
      function () {}
    ], opbeat.client.captureError);

Since the `common.step()` function binds to the internal state of the
current step-scope, `this` would no longer refer to the expected opbeat
client.

But since the opbeat client is a singleton, we can expect to find its
object on the `exports.client` property - problem solved.

Previously a work around would be this:

    common.step([
      function (next) {
        next(new Error('Some error'));
      },
      function () {}
    ], function (err) {
      client.opbeat.captureError(err);
    });
Merge branch 'master' of github.com:watson/opbeat-node