All unit tests passing!

Had to modify the equals method in OptionalArgument because the contains
method of ArrayList needs the overriden equals to be reflexive to use
it.