Allow factoring of empty rays and rashes
Remove broken optional argument
Attempt a refining ArrayAccess interface for typed keys