WIP: Move inheritance from Behaviours to Descriptors

During the development of the Descriptors was inheritance not included, this was an oversight during the development process.

This issue corrects that oversight by adding inheritance support to the Descriptors.

- [x] Inherit summary
- [x] Inherit description
- [ ] Use the inline `@inheritdoc` to augment the existing description
- [x] NEW: If the inline `@inheritDoc` is the only element; inherit everthing from the parent DocBlock
- [x] Inherit `@package` for Classes and Interfaces
- [x] Inherit `@subpackage` for Classes and Interfaces
- [x] Inherit `@var` for properties and constants
- [x] Inherit `@author` in all DocBlocks
- [x] Inherit `@version` in all DocBlocks
- [x] Inherit `@copyright` in all DocBlocks
- [x] Inherit `@method` for Classes and Interfaces
- [x] Inherit `@property` for Classes and Interfaces
- [x] Inherit `@property-read` for Classes and Interfaces
- [x] Inherit `@property-write` for Classes and Interfaces
- [ ] Update Twig template to support inherited information
- [x] Separate retrieval of Inherited methods from the getMethods into a separate getInheritedMethods call.
- [x] Check whether getConstants, getMethods and getProperties use the name as key for their collection entry

Please note that inheritance is only applied if the parent element has the same base package (first part) as the current element.