First changes preparing for type-checking in the container instead of the individual reader classes.
Pulled out type checking out of individual reader classes and put it into the container.
Implement ArrayAccess