Improve the name resolution system - making it simpler and more robust
Slightly improve performance when creating new nodes
Fix symbol resolution in CommaExpression to consider the source.
Enrich the interface of the SymbolMatcher
Inline some Node methods.
Speed up reference resolution
Improve how all children of CompositeNode are returned.
Introduce a method to get the direct child node on a path to a subnode

Speeds up many checks.
Pass a QSet reference when resolving symbols to speed up execution
Introduce a custom dynamic cast method DCast.

It works with objects using the Reflect class and the corresponding
TYPE_ID macros. It is much faster than a normal dynamic_cast. Could
probably be improved even further.
Use DCast instead of dynamic_cast in some places when finding symbols

This speeds up execution a bit.
Add a new plugin for comments framework
Add basic support for comments consisting of lines and formatted text
Drop redundant class for Markdown Lines
Add basic support for more comment items
Drop unnecessary CommentBrowser node
Browsers will be represented in Markdown as plain text and only have an
associated item but not a node. The previously introduced CommentBrowser
node is thus no longer needed.
Inline functions that are used only once
Allow shapes to have one of three predefined shape types
Avoid infinite recursion during style initialization
Add different diagram shape types (Rectangle, Ellipse, Diamond)