Source code for the Open University TM470 project