Compatibility with request

Fixes #41 
Not backward-compatible. I propose this to be released as 2.0

I removed all deprecated behavior, The request-alike HTTP error handling is now default, with an option to go back to getting an error when HTTP is not 2xx

xhr also returns a custom response object based on what is a common simple HTTP response in node, and there's a field that holds the original XMLHttpRequest object.  
Simplified error messages - less code, more information to the user