Reworked the error system to be more user-friendly