first step of refactoring base classes
moar refactoring
even more refactoring
validation and filesystem