Reworked to fit the presenter model properly now