Merge in changes from Open Source.
For the most part, this encompasses two changes:
- Adding partial sync capabilities to multi-master
- Adding ReadWrite locks to prevent global lock issues when forking threads, specifically with regards to the time thread.