Merge: from occlusion_rework
- UsePlayerTasks runs occlusion checks using batched burst jobs
- UsePlayerTasks - any visibility changes are processed using tasks distributed amongst worker threads
- UsePlayerUpdateJobs - more use of CachedState
Tests: a bunch of local 2 player sessions on Craggy