Completed the rough port of another module (Language.java) tonight.
PHP arrays are more annoying than I originally thought, and the number of odd functions which I deferred to later implemention by stuffing them into the MW module was annoyingly large for this compilation unit. Also, it's quite obvious to me that I'm going to have to infer an interface for LanguageConverter and apply that to both LanguageConverter and FakeConverter as the two have incompatible constructors, yet are clearly intended to be interchangeable otherwise. But I can't use eclipse to infer an interface until the compilation unit is compilable, which means I have to get through cleaning up LanguageConverter first. Oh well. I suppose I could infer the interface by hand, but what fun is that?
I am getting much faster at converting foreach() constructions into Iterator .. while (hasNext) .. next() constructs.