Added isTraversable, isArrayAccess and keyIsset

I added three important assertions that are missing. See the code for details.
I don't think so. As a user, I expect `keyIsset` to behave exactly like `isset`. You still have `keyExists` if you want to test for real key existence.