Added new long route constraint and updated the int route constraint to int

Fix for #1565 because @mat-mcloughlin was too slow.

Note:

If you have two constraints on the same URL for `int` and `long` then first in wins since the scoring will be the same. But there's no way for us to truly know which route to pick.

If the user puts in 1000 but wants it to hit the long route then it may pick the int route.

But we can't prevent this, and the user is stupid if they're making routes like this anyway.
I'd put `// Given`in the `ctor`, `/ /When` over the the `this.browser.Get` and `// Then` over the assert