Restructure the whole app