Refactored the app to be modularised by feature