Port: IndexReader, CompositeReader, etc

Also: Term, BaseCompositeReader, and some new support types