groupon/gofer — pull request #7 by jkrems (2014-10-31 18:44:37+00:00)
Title: Replace wrapper hack with simple inheritance

This changes the way that gofer works internally while exposing the same interface. It also allows a new, simpler way of using gofer:

```js
// ES6
import { Gofer, registerEndpoints } from 'gofer';

class Github extends Gofer {
}
// Because ES6 classes do not support value properties...
Github.prototype.serviceName = 'github';
Github.prototype.serviceVersion = '1.3.2';

// or just: Github.prototype.registerEndpoints({ ... })
registerEndpoints(Github, {
emoji: function(request) { /* ... */ }
});
```

```coffee
# coffee-script
{ Gofer } = require 'gofer'

class Github extends Gofer
serviceName: 'github'
serviceVersion: '1.3.2'

Github::registerEndpoints {
emoji: (request) -> # ...
}
```