Cleanup based on review comments.
Add a test for using an ArrayObject for options.

Traversable instances should work for options.