added convenience __getitem__ methods
refactored parsers and functions