Small refactoring. Algorithms splitted in separate files.
Programming question 2