Merge pull request #696 from shakedown/dev/1.5.x/pe1450-additional-paging-tests

Dev/1.5.x/pe1450 additional paging tests
Validate against strings not keywords
Fix precondition in `validate-order-by!`
Resources query paging tests
Sort results during post-processing
Docstrings and conditions for sorting functions
Generalize the ordering functions for sorting the resources
Move `order-by` and related functions over to `utils` namespace
Add tests for `order-by`
Change `:field` entries in order-by maps from strings to keywords
Use simplified `order-by` expression data structure

Prior to this commit, we were using two different data structures
to represent an 'order-by' term.

We also weren't validating the ascending/descending portion of
an order-by term in the HTTP middleware; we were putting that
off all the way until the jdbc code, and passing around these
potentially varying string representations everywhere else
throughout the code.

This commit moves the validation logic for the 'order' terms back
into the HTTP middleware.  From that point on, we can be assured
that the 'order' will be represented as either `:ascending` or
`:descending`, and all of the order-by terms will be valid
based on the `order-by-expr?` predicate that goes along with
the new `order-by` utility function.
Fix pre-condition to accept type used at runtime