Fix the order of the initial sort being backwards in JS
Elide default values (page, sort) when creating canonical URLs
Set the default page+sort ales in the filters map

They're ignored by the unparse functions anyway, so it just makes it simpler elsewhere to assume they're there.
Stop using the _keys array for the JS map, use Object.keys()
fixup: defaults
Fix how the page is reset to 1 when adding a filter
Merge branch 'bug/filtered-pages'

* bug/filtered-pages:
  Fix how the page is reset to 1 when adding a filter
  fixup: defaults
  Stop using the _keys array for the JS map, use Object.keys()
  Set the default page+sort ales in the filters map
  Elide default values (page, sort) when creating canonical URLs
  Fix the order of the initial sort being backwards in JS
Add rich filtering on the server side
Add rich filtering to the UI/JS interface
Change how filter possibilities are rendered.

Better shows what filter prefixes are doing.
Don't offer rich filtering on statuses and details in JS

It's not supported on the server, so don't offer it as an option.
Merge branch 'feature/range-filtering'

Closes #47

* feature/range-filtering:
  Don't offer rich filtering on statuses and details in JS
  Change how filter possibilities are rendered.
  Add rich filtering to the UI/JS interface
  Add rich filtering on the server side