Refactored class constructors, more separeted TDD