Don't include default ports in last_effective_url

Currently if you get a redirect to http://test.com/ the
last_effective_url will be http://test.com:80/

Solve this by not changing the Addressable::URI instance.

This also affected encode_host so only include port in host
header if it is not nil and not any standard port.
fix rspec deprecation warnings
Add spec for testing default ports for last_effective_url
Merge branch 'dont_include_default_ports' of github.com:wader/em-http-request
can debug request headers