* update camera controller to block box select during orbit
* simplify update for modern viewport camera controller
* wip working lmb box select with orbit
* add test for changes to click detector
* add unit test for camera system to validate events
* remove debugging code, tidy-up changes for PR
* small updates before posting PR
* fix for linux build failure
* improve selection in the viewport
* remove debug code
* updates following review feedback
- update API comments from /// to //! from
- add [[nodiscard]] attribute to member function
- move constructor implementations to .cpp files
* use lambda instead of ternary operator
* fix unit test failure caused by typo