Right, but I'm not sure how to organize this into two MRs. Would it be acceptable for the first MR to only contain the stubs for the `I{Observable}Map`, `IMapView`, `IIterable` and `IIterator` interfaces (i.e, the first 8 commits)?
Yes, that would work. It can have two or more MRs, as long as each MR is pretty self-contained and easy to review.