Got rid of confusing method BSONReader.getNextBSONType, since you can always use BSONReader.readBSONType instead, though not in the same context (you have to call it before you call readName())