more abstraction

replaces all file extension to getFileExtension
some file getters refactored
fatal fixes