Add index-parameterized array classes
Add unit tests
Code cleanup for effect checking