Refactor project sturcture