Implementing query search backend

This change replaces FromPath with FromRequest, which allows the
identifying type of a resource to also be parsed from the query string
in the URL.  Implementing these by combining ifTop with serveRoute is
the next step.

The Disabled PutAction has also been removed, as it can be modelled by
specifying an action that has not been implemented, and should not be
able to be turned off if both actions are implemented.
Response Allow header considers if PATCH disabled

The Proxy type has been split into its own module, in anticipation of it
being required for FromRequest as well.
Replacing error with absurd where applicable
Implementing GET for collections

Includes a new default options set which adds a fetch limit, and
requires a user-defined request body limit.  This change also removes
the unnecessary 'With's from the end of a number of serve functions.
All collection functionality implemented

The optional fromParams function has been moved to the Resource record,
and the options are set based on where it is implemented.
Splitting serve into separate module, hlint tidy