create a simple cache for storing model hierarchy lookups
create simple methods in a base class for model hierarchy navigation
create a wrapper for hierarchy navigation using different types
adjust PojosImpl to use hierarchy navigator

this will make changes for ticket 11019 easy to implement
change preprocessor to use hierarchy navigator
adjust do-all for change in preprocessor constructor
update preprocessor test class with latest changes
remove weird rebase artifact
replace local function with third-party library function
Fix sessions.py header
Add CLI/API for passing sudo parameter
sessions.py: Add call to createSessionWithTimeouts
Fix empty string bugs in SessionManagerImpl

Probably since the move to Ice, null strings in the
Principal object have been converted to empty strings
which have failed the various tests for setting defaults.
Record 'omero.sudo' in session file
Filter inactivate users from 'omero user email' (Fix #12024)
Use temp/rename for config.xml writing (Fix #12002)
Prevent save_on_close from omeroweb/settings.py (See #12002)
Fix flake8 in user.py
Fix unit test test_sess.py
Add **kwargs to MockConfigXml