code cleanup + small refactoring of packages
splitted huge file into severals