Fix Node often not being properly subtyped
Nodes should be created with the added Node::createNode instead of the
Node constructor, which cannot return a subtype of Node even if there
is one for the wrapped KisNode. The constructor is now private.