Test interleavings with events from other traces

This reveals that disableEventFromOtherTraceDoesNotDisableMatch is failing under normal conditions!
This uncovers that Algorithm D' is partially flawed.
Add flag to modify test expectations. To be switched when algorithm is corrected.
Test trace slice interleaving

Some tests *should* normally fail, therefor conditional test expectations
Rename DefaultParametricMonitor tests => semantic naming scheme

Deactivated non-deterministic test: multipleOpenTraces_monitorSetSizeGrowsLinearly
Test DefaultParametricMonitor with pattern ab_a
Test DefaultParametricMonitor with pattern a_ab
Test DefaultParametricMonitor with pattern a_ab with initial ab loop
Refactor to AbstractLowLevelBinding
Rename LowLevelBindings and their factories

DefaultLowLevelBinding -> ArrayBasedBinding
LinkedListLowLevelBinding -> LinkedListBinding
Update copyright header according to EPL notice standard
Rename variable
Let there be total matching semantics

Change the semantics of creation events:
Creation events are events for which the successor of the initial state is a non-initial state (including the dead state).

Change the semantics of enable sets:
The new Enable sets are enable sets calculated on an modified fsm where all initial self-looping edges are removed

Add some tests
Add some testing utils
Improve code style
Store timestamps in Nodes

This is a larger update which fixes the shortcomings of Algorithm D'.
Storing timestamps in bindings was not correct in a number of cases.
This solution stores timestamps per parametric instance not per binding.
Known problematic cases now work properly, e.g.

    DefaultParametricMonitor_ab_bc_cd_ad_Test
    DefaultParametricMonitor_ab_bc_ac_Test

and others.

Summary of changes (also see dev-branch):

    Remove diffMask from JoinData
    Fix default timestamp for new Nodes
    Add ModelVerifier
    Add calculateExistingMonitorMasks
    Introduce existingMonitorMasks to EventContext
    Rewrite other parts of DefaultParametricMonitor
    Rewrite monitor creation phase
    Rewrite join phase
    Add disable check for find-max phase
    Add disableMasks to MaxData
    Set timestamp in each node at end of main method
    Use correct time check
    Add dead monitors with timestamp
    Refactor BaseMonitor to Monitor (interface) and BaseMonitor (abstract class)
    Use disableMasks in joinData
    Add toListOfParameterSetsAscending
    Add calculateDisableParameterMasks
    Add tests
    Add calculateDisableParameterMasks
    Add calculateDisableCheckParameterSets
    Rename fsm in test
    Add timestamp to Node
Optimize lookup for existing monitors in 'create new' phase

Rename monitor.'getCreationTime' to 'getTimestamp'