Suggestion: replace URL building logic with url.format (backwards-incompatible)

I think the URL building logic could be significantly simplified by just using node's `url.format` method. This would make `request-proxy`'s options more consistent with other libraries modelled after the `url` module's argument naming.

The major benefit would be support for URL strings without adding complexity. The major drawback would be breaking everybody else's code if they use the `port` option in combination with the `host` option: in the `url` module `host` is the combination of a hostname and port, overriding both options if specified.

If merged, this would make the previous two PRs redundant but introduce a breaking change that should be reflected in a bump of the version number.