Bug 499: Improved data change listener tree management