Merge pull request #84 from fstengel/master

Localization continued
resize the java icon to 16x16 (fix #87)
Reintroduces the JavaScript language.

I don't like it myself, but YMMV.

This reverts commit 0bb401b20d2733244939df2f9bfdfb73b9e9e996.
simplify code: cannot set debug more per exercise anymore
Create a Entity.runIt() method

It's in charge of running the entity, which is not a trivial task as
it depends on the universe (bat entities are not run as the other
ones) and on the language (java entities are just run by launching
their run() method that was written by the student; python entities
are run by injecting the code written by the student into a Scripting
engine; and Lightbot entities are run by executing their run() method
that interprets the code "written" by the student).

Also, improve a bit the documentation in this area of the code.
there is no private source files anymore, thus renaming the method
another automated refactoring on method name for cosmetic
reduce the amount of methods around entity mutation/execution by killing a trivial one
standardize the name of an exception
Another small cleanup around execution/mutation

Make sure that Lightbot is not concerned by this code (by raising an
exception if someone changes the code so that this assumtion fails)
simplification: kill some unused functions and add some sanity verification
little cosmetics in the Exercise class
ask the embeeded java compiler to translate its error message (does not seem to translate to french in openJDK6)
kill dead code and improve comments
actually, ExerciseTemplatingEntity#run() was redefining its super#run() to the identical
kill useless code
Fix two bugs

- also deal properly with // comments that are not on the first line of the template
- HIDDEN sections placed after the solution are now properly handled
Kill a rogue call to mutateEntity by simplifying BDR2

We want to check whether the dance floor indications correctly lead to
the same trajectory for each dancer, so the entity does a bit more
than just dancing.

But now that we have world.getParam() (that was introduced with
TurtleWorlds), we don't have to hack the JLM internal directly this way.

This simplification will ease further refactoring of mutateEntity()
damn this is another redefinition of this method that is identical to its super()
kill a misleading and never used definition