reorganise project structure
refactor
ignore more files