A few final touches to dictionaries

RFC: The name of NoSuchElementException (conflicts with
java.lang.NoSuchElementException). Suggestions?

Test cases and the .length reference.

Also, created NoSuchElementException. (Supercedes
java.lang.IndexOutOfBoundsException; also used for when a value is not
in a dict, since java.util.Map just returns null in that case).