Added isTraversable, isArrayAccess and keyIsset

I added three important assertions that are missing. See the code for details.
This name is misleading as it does not check only for `Traversable`