Add API to manipulate HTTP & HTTPS Agents

- See https://github.com/pwnall/node-xhr2/issues/1 for the details
After code review by @pwnall.

- update jsdoc comments
- rolled-back re-indentation
- turn `@agents` into `@_agents` (private) but keep `@setAgents()` public
- `@setAgents`: do not modify input parmeter
- `@_onHttpError` update processing (no `request` is passed as a param)
After code review by @pwnall.

- remove programmatic API
- make http & https agents public properties
xhr2: drop un-needed tunnel dependency
xhr2: fix httpAgent & httpsAgent members declaration

- this is one of _how did that ever worked?_