MozReview-Commit-ID: ETzQVCu1o7z
Having a proper recursively-acquirable mutex type makes intent clearer, and RecursiveMutex also happens to be somewhat faster than ReentrantMonitor.