func NewRequestFailure(code, description string, statusCode int) Error {
	return newRequestError(code, description, statusCode)
}
NewRequestFailure creates a new Error object wrapping the server error
package bmxerror
type Error interface {
	Error() string
	Code() string
	Description() string
}
type RequestFailure interface {
	Error
	StatusCode() int
}
func New(code, description string) Error {
	return newGenericError(code, description)
}