I like th esplitting out the errors into their own class