Fixed duplicate listeners.
Today's commit, some bugs in the refactoring of compilerflasher and
stared implementing a cleaning mechanism for listeners.
The callback cleanups should work but they dont.
Correct handling of callback stacks
Fixed test
Some documentation