Add support for host, protocol, and port configuration.

This PR is an alternative to #131, #132, and fixes #127.

### New Features:
* Adds support for specifying a default protocol, host, and port in `default_url_options`.
* Adds support for routes which specify a specific protocol, host, or port.

### Changes:
* Changes expectation of `url_links` to a boolean value and deprecates the previous usage. Default protocol, host, and port are now configured with `default_url_options`.
This context is for testing the effects of not specifying a protocol, while the previous context is for testing the effects of not specifying a host. Technically, the options specified in these contexts are the same because a host is required, but the tests within these contexts are specific to the thing that they are testing.