removed some warnings + some refactoring and improvements
arranged the files and added groups