Create custom Error types that can be thrown with proper stack traces