[FEATURE query-params-new] Hopefully final iteration

- default value'd QPs no longer show up in URL
- default value's type is used to determine how
 deserialized QPs are cast into controller prop values
- added queryParams Route config hash with properties
 `replace` and `refreshModel` to configure changed
 QP property behavior
- better code organization

/w @raytiley's help