adding residue access to Molecule via getitem and residue_range