refactoring, some new classes and tests, graphs class for genes