- allow passing content type
- ajax errors return jqXHR rather than the error