feat(Package): allow processors to be defined as an object

If processors are defined as an object they cannot have services
injected into them but if that is OK then this gives a less verbose
API.

Previously, you would have to wrap the object in a function:

```
myPackage.processor(function testProcessor() { return {
  $process: ...
});
```

Now you can also do:

```
myPackage.processor({
  name: 'testProcessor',
  $process: ...
});
```

Note that in this case the name must be provided on the object.
chore(doc-gen): add `npm run docs` script
refact(dependency-sort): remove winston
chore(Dgeni): remove rimraf and lodash from project
docs(Package): improve docs for processor method
chore(package): add es6-shim to dependencies

This is needed for the Map class
test(Dgeni): add tests to improve code coverage
feat(Package): allow processors and service to override their name