This is translated code; I'll hopefully be able to move over to referencing the analyzer's implementation, rather then pasting in a copy here. I'll do some cleanups of this code. Who would I bug about java2dart improvements?