* let's not miss failedserver removal
* remove resetting of FailedServers in test code
* Only call abortRequestsToFailedServers at most every 3 seconds.
* UI: document/edge editor now remembering their modes (e.g. code or tree)
* changed shardDistribution api behaviour, added PUT route to only fetch collection based shard distribution
* ui: optimized shards view, added missing cleanup function in nodes view
* broken test
* shard distribution tests not fit the new api behaviour
* variables as reference
* CHANGELOG
* disentagle writes and reads in agency
* renamed _oLock to _outputLock. Documented read and write rules for _readDB and _commitIndex using _outputLock and _waitForCV. Adjusted code to match rules.
* update executeLocked() knowing some callers use _readDB via readDB(). readDB() currently read only, but using write locks due to absolutely safe.
* Lay out clear rules against deadlock in agency.
* Avoid unprotected access to _commitIndex.
* Really enforce the hidden option --server.maximal-threads if given.
* Switch off --log.force-direct in scripts/startStandAloneAgency.sh
* Lower the timeout for sending AppendEntriesRPC to 150s.
* Erase _earliestPackage when becoming a leader.
* Challenge leadership in agent main loop.
* Use steady_clock for _earliestPackage.
* Change _lastAcked and _leaderSince to steady_clock as well.
* time difference calculations based on old readSystemClock to steadyClockToDouble
* All system_clock transitioned to steady_clock in Agent. Remaining system_clock are user input / output or timestamps
* Inception system_clock to steady_clock
* Server short name could arrive too late for first health check. Would lead to supervisor thread crash. Add test for this condition and defense against other unknown throws in health check.
* Correct capitalization of ShortName. Add spaces to two Log lines.