Automatic Documentation Generation (dgeni)

This is a draft effort at generating docs from the src.  To try it out do:

```bash
npm install
gulp dgeni

npm install -g http-server
http-server docs
```

The browser to http://localhost:8080/

The documentation is generated by dgeni using the traceur compiler to parse the source code into an AST for each module.
This is then manipulated to extract each module's exports and then rendered to HTML files in the `build/docs` folder.

Any JSDOC style comments in the code will be extracted and attached to the relevant bit of the AST and so used in the generated docs.

All the configuration, processors and templates for this are stored in the `docs` folder.
The templates right now are very simple (`docs/templates`). We can have template inheritance and includes to provide more sophisticated layouts and content.

More processing needs to be done in dgeni to extract the navigation and also to do a better job of extracting useful information from the source code.
In dgeni-packages, I have defined an inline tag called `{@link ... }`, which can generate a hyperlink to other parts of the docs by their id. To make it more flexible and easy to use, you don't have to provide the full id, but can also provide an alias. The functionality is clever enough to spot ambiguous links, such as (in the old docs) `{@link ngClick}` is ambiguous as we have `ngClick` in both the `ng` and `ngTouch` modules. One of the aliases to a directive also includes the module name, so we can do `{@link ng.ngClick}` and so on.

In the case of ES6 modules I was not sure how this should work. Are module names relative to their referencing position or I think what you are saying is that you set a base path and all are relative to that.  In which case, I guess we don't want to make these aliases for links.

The question of connecting up imports to exports is another matter that we need to deal with later...