Moved child pointers to OperatorNode class
* access was restricted by declaring them private and offering member methods such as "hasChildren"
* only OperatorNode instances have children, there is no reason for wasting space by keeping empty pointers around in all other instances
* this enabled the removal of all nullptr comparisons from tree construction
* changed "Tree::addNode" factory method template to return a pointer to the type of the constructed node instance instead of a plain node pointer