added a better way to handle errors in presenters
added presenter template