preserve order of projections in inlineProject
be sensitive to the order of fields when checking results

Note: only the order of fields in the top-level object is currently
checked. For example, that means the order of fields inside "value"
is not verified.

Produces a nice message if the fields are correct but out of order.

See #313, which this does not fix (more like makes it actually broken)
test simple select with more than 4 projections
Merge pull request #334 from mossprescott/ready/field-order

Check order of top-level fields in result