Add support for optional route parameters.

Optional portions of a route are surrounded by parens (eg. "items(/page/:page)").
Merge pull request #741 from ktusznio/optional-route-params

Add support for optional route parameters.