remove addNodeListener.

Since getNodes() returns a read-only observable view,
the listener can be added to it without calling
addNodeListener().
Add node when setting mass; unset mass on removal.
Update body type on changing +Inf masses.

A body with infinite mass must have its type set to STATIC
to work as expected.

Body types need to be updated when giving a body infinite mass,
or changing from an infinite to a finite value.

(fixes #3)
Javadoc automatic style fix
Add an exit button to the examples.

This seems to be need to easily close the example
when it is running in an undecorated window.
Don't add the listener in the constructor.

Apparently it is unsafe to call an overrideable method
inside the constructor, even indirectly via a listener.
Don't update model and view in every physics step.

It should be enough to do this once per animation frame,
whereas the physics step can be performed many times per frame.

(Also: Doubling the physics step from .0005s to .001s.)