threads: Written the test suite.
threading:
1. Implemented creating new threads.
2. Support for model checking for simple multi-threaded apps.
threading: 1. Updated both tools and semantics to support model checking on threads.
2. Changed the directory structure. Now programs contain only programs meant to be executed, and model-check - programs meant to be model-checked. Basic threading tests should work once we setup jenkins properly.