Subdomain route constraints fix

Fixes #10180

* Passing `subdomain: ''` to `url_for` removes the subdomain (instead of adding a leading .)
* Adding a boolean route constraint checks for presence/absence of request property