Minor updates to test results related to deflattening
The testing system should execute all Java code by default
Fix: transformation of the let def statement did not reapply the visitor
Got rid of the deflattening transformation and some renaming of another transformation
Updated the functionality that finds the appropriate enclosing statement of a node
IR node cleanup: Now there only is one way to represent local variable declarations
Added test revealing problem with pattern checking in block statements
Cleanup of test resuts due to IR abstract syntax cleanup
Removed the let def statement from the IR abstract syntax and replaced it with blocks
Fix for generation of pattern matching in a block statement
Union type transformation of the equals binary expression is not needed anymore
Java quote value generation cleanup
Updates to tests related to record modification
Updates to the testing system that executes the generated Java code

Changes to the output that makes it easier to keep track of the
progress.
Added work on integration of concurrency classic tests
added the VDMThread class to the runtime.
+change the appropriate transformation to extend the VDMThread class instead the native thread.
+update the test results.
Merge remote-tracking branch 'origin/gk/codegenconc' into pvj/main

Conflicts:
	core/codegen/src/test/java/org/overture/codegen/tests/utils/CompileTests.java
Added the POP3 model as a test (Test 1 in POP3Test)

The model is slightly changed to fit the testing system
Slight improvements to the testing system that executed the generated Java code

Large outputs are now limited to a fixed number of characters
Changed the way that the output of executing the generated Java code is read in the testing system.

Now the output is read using a separate thread.