Mike errors

Added custom error types for us to use in the backend

<!---
@huboard:{"order":5.25,"milestone_order":9,"custom_state":""}
-->

I don't understand this, given the line before.