Various fixes and small enhancements

## A better explained list of changes

1. Added `OPTIONS` verb
2. Can now delete an header if the passed in value is `null`. Ie, `.header('X-Requested-With', null)`
3. Handling better `data` so extraneous `?` or `&` won't get appended when not needed. At the current state a simple get `agent.get('/test-page').send()` will result in a call to `/test-page?`
4. `HEAD` is `GET` with empty body (reads creepy!).