Corrected SingleLinkedList mtx bug

The mtx is converted into sc_recursive_mtx deleted in the destructor
Changes in cmake to build lazy tests

Some changes in cmakefiles had caused the test associated with lazy_test to stop building. Those changes were reviewed and corrected.
Duplicate code was removed in STEPaggregrate

STEPaggregrate and its superclass SingleLinkList.cc had the same destructor.
Removed duplicated code in SubSuperIterators.cc
Made SubSuperIterators.h thread safe

This was done by introducing a recursive mutex meant to protect the std::deque 'q' and unsigned integer 'position'
Modified add_schema_dependent_test module

Some of the unit tests were failing due to assertions failures inside mutexes.
Ultimately the CMakeFiles were changed and all the tests except of 'test_inverse_attr3' are passing