Implement errors with exceptions, not manual handling