Changed generic type of IHttpPromiseCallback for error callback to allow for difrent return type. It's likely that the error return type is different from the regular result type