Having implemented the three main threads in separate classes so as
to work more easily and the code to be more understandable...