Gets the change information for the given element.
The change information describes what elements were
added and removed and the location. If there were
no changes, null is returned.
This method is for observers to discover the structural
changes that were made. This means that only elements
that existed prior to the mutation (and still exist after
the mutatino) need to have ElementChange records.
The changes made available need not be recursive.
For example, if the an element is removed from it's
parent, this method should report that the parent
changed and provide an ElementChange implementation
that describes the change to the parent. If the
child element removed had children, these elements
do not need to be reported as removed.
If an child element is insert into a parent element,
the parent element should report a change. If the
child element also had elements inserted into it
(grandchildren to the parent) these elements need
not report change.