Fixed #17627 -- Renamed util.py files to utils.py

Thanks PaulM for the suggestion and Luke Granger-Brown and
Wiktor Kołodziej for the initial patch.
Added backwards compatability shims for util modules.

refs #17627
Fixed test failures introduced in previous commit.
Reworded a paragraph in the logging docs.
Updated examples in the docs after eade315d.
Fixed #21109 -- made db cursor error wrapping faster
Implement lookups as classes
Support for nested lookups
Improved error messages
First steps to allow values() to contain extracts
Support for values_list, annotate, aggregate
Use field.get[_db]_prep_lookup for SimpleLookup
Lookup definition now correct
.order_by() support
Ordering by lower() example
GIS select clause compatibility
Refactored value conversion in GIS
Lots of select clause improvements
Added test for values_list() conversion for custom field
More select clause generation improvements