Excuse me if this has been discussed before, I must have missed it then.
In Event (which inherits from Pathable) we have an attribute called
parent of type History<T> (which inherits from Pathable)
In Pathable we also have an attribute parent, which is made invisible,
but gets a value at the constructor of Event (by calling super()).
It caused confusion, and I think it is not necessary, or is it?
Bert