Looking at MOAT.java, I'm a little surprised that I didn't systematically test the implementations in Collections.java, even though e.g. it has a section for empty collections. How hard would it be to add such support?