fine tunning and cleaning the code and completing the documentation