Add search option handling.
Extract field mapping into a separate thing.

The Db class was getting fat with all the various field mappings.
Pulling them out make things a touch simpler.
Refactor some duplicated code and get somewhere nicer.

Extract a paginate() method that uses the inputs to mapper->convert()
and creates result sets.
Search form works now :D