Using controllers and "suspension manager" allows for better structured Android UI code