Correct permissions when using permission projections

Fix for: https://trac.openmicroscopy.org.uk/ome/ticket/12474
This is a temporary measure until this bug can be properly fixed on the
server side
Reinstated method that parses permissions for css

Should not be used until bug is fixed:
https://trac.openmicroscopy.org.uk/ome/ticket/12474
Typo in marshalling plate acquisitions
Unit tests brought into line with temporary fix

Also highligted that test cases require group ownership or admin if an
object is not owned
Remove typo semicolon from pythno unit test
merge develop -D org: PR 2391 (Imagej omero (rebased onto develop))
merge develop -D org: PR 2435 (cpp: RTypesI: use static locals in place of duplicated globals)
merge develop -D org: PR 2560 (for-loop fix removes 'undefined' from reset dialog. See #12301)
merge develop -D org: PR 2747 (Bugfix: Saved by display)
merge develop -D org: PR 2795 (Use mklink under Windows (rebased onto develop))
merge develop -D org: PR 2797 (OmeroCpp: switch build system from SCons to CMake)
merge develop -D org: PR 2799 (Auto close (rebased onto develop))
merge develop -D org: PR 2805 (`fs rename` command for modifying template values (rebased onto develop))
merge develop -D org: PR 2809 (Update develop submodules)
merge develop -D org: PR 2810 (Pytest markers registration (rebased onto develop))
merge develop -D org: PR 2812 (Overhaul of Insight's Search, Part 2 (rebased onto develop))
merge develop -D org: PR 2821 (12252 script limit (rebased onto develop))
merge develop -D org: PR 2830 (Show error message if group permission downgrade fails (rebased onto develop))
merge develop -D org: PR 2835 (Update OmeroPy/src/path.py)
merge develop -D org: PR 2839 (Remove epydoc targets/styles from the repository)