New Feature: Protocol support

### New Features:
* Adds protocol support when generating URL helpers, for routes with specific protocol specified.
* Adds support for "protocol relative" base URL value in `:url_links` config.

### Changes:
* `generate_url_link` no longer validates that the `:url_links` config value contains the protocol.

This PR fixes #127.
As I understand if the `url_links` is abstract from protocol than `protocol` route option is ignored, correct? I don't think this is right. 

`new_session` route forces protocol to be https and it can only be ignored when `url_links` specified protocol explicitly. 

So I think that `//example.com` and `example.com` should work in the same way.