v4.1.0 Debugging and improvements release
Refactoring:
- The setOutputsChange() and getOutputsChange() transparently changed. The API was not changed -it still sets and returns a boolean value- but internally now keeps a counter to avoid multithread developments generated race conditions.
Debugging: - The use of getters and taskNotify mechanisms for the same attribute flags at the same time generated unexpected results due to race conditions: SOLVED.
- Code overall simplification and cleanup.
- DFA unconditional state changes allowed to cascade on more classes' state machines.
Example files: - Several example files added.
- Some example files modified to show different solutions approaches for the same results.