Make registering a node initializer function slightly less hacky.
Items now use the handler of the base type if one isn't specifically set
Introduce common base classes for Expressions and Statements

This simplifies handler registration, as it can be performed at the base
class.
Add Reference- and Pointer- unary operator
Adds model, interaction and visualization of pointer and reference types
Fix wrong indentation
Make it possible to use C++11 range-based for with List nodes
Use x-macros to generate standard expression visualization classes

All classes which are trivial to replace with the new technique are
replaced.
Remove some unused headers and fix test nodes initialization in V.base
Change OOModel::Class to inherit from StatementItem
Now it can be added to a method body
Update README.md to include a link to ETH
Clarify some code style issues in the documentation
Add a script to simplify publishing the documentation
Add a virtual method that returns the class name to itemMacros
Introduce a lightweight option to register grid based offset providers
Introduce a kind for classes
Classes can represent different constructs and those can be specified
with the ConstructKind parameter
Enhance the Adapter framework with default adapter classes
Use the GridBasedOffsetProvider as a default adapter

This reduces the amount of manual provider registrations that needs to
be done.
Add friends (list) to classes
Reduce the necessary string offset provider registrations even more
Remove unnecessary functionality from GridBasedOffsetProvider