Adding test for clear.
Adding implementation of clear.

Fixes get not throwing an IndexOutOfBoundsException for index 0 on empty
lists (NoSuchElementException was thrown instead as the iterator needs to
support adding to empty lists).
Adding tests for removeAll and retainAll.
Adding implementations of removeAll and retainAll.