Massive commit which contains everything done so far.
Lab1 is completed as well as 2.1 and 2.2.