adding www-json-response.error
Some refactoring
Create HTTP::Response objects instead of using lwp helper functions. Makes code less reliant on lwp and makes setting auth headers cleaner
Adding ability to retry an api post