Structure refactoring and in file documentation