explicitly depend on natives.coffee being created for *-cli targets
fix longstanding TODO in getCallerClass
deleting trailing spaces
adding a beanshell repro case, fixing it

We weren't handling the case where invoke0 was called on an interface
class. I've also split out the sun.reflect package from natives/main to
its own file.