Pre-beta refactoring

## Goal

This refactoring has several goals:

1. Change the structure file to a serialize object graph to enable:
  
  1. A better integration with twig
  1. Faster inheritance
  1. More flexible back-end

1. Rewrite the default template in Twig and thus fix bugs related to the template
1. Integrate Twig into Core
1. Deprecate all XML related behaviour
1. Add a router component to remove issues with changing URLs between templates
1. Improve DIC Wiring in Application class to be able to improve DI handling

## Tasks

This is not an exhaustive list as a lot of the refactoring has already been done before I discovered this feature in Github.

- [x] Write XML output Writer
- [x] Create compatibility layer
- [x] Allow smart selection of serialization type
- [x] Clean up code
- [x] Elements should be related to files
- [x] Deleted files are not yet removed from cache
- [x] Refactor XSL writer to have a dependency on the XML writer
- [x] Merge develop into branch
- [x] New twig template should link types in @param, etc to locations using router
- [x] Make cache path configurable / relative to target path
- [x] Verify that you can add your own transformation in the config without a template
- [x] Title does not appear to be set by default nor propagated; investigate
- [x] Write Changelog
- [x] Packages are not indexed and thus not shown
- [x] PHP Notice:  Object of class phpDocumentor\Descriptor\PropertyDescriptor could not be converted to int in /vagrant/vendor/twig/twig/lib/Twig/Environment.php(321) : eval()'d code on line 664
- [x] Evaluate whether there is time to incorporate Monolog fully
- [x] Change ParentClass to Parent in ClassDescriptor