big refactoring and files reorganisation