Fix getAllConnections() return type.

This allows lambda expressions in Box2DSpringSimulation.
Support adding force fields to Box2DSpringSimulation.
Properly initialize the Box2D world.

All objects are supposed to behave as non-colliding
point masses (for now). This requires the creation
of a new zero-dimensional Shape with a fixed mass.
Rewrite the AnimationTimer code for JBox2D.

The code works exactly as in SpringSimulation, except
instead of forward integration we calculate the forces and
execute a world step.
Bug: Make infinite-mass objects static.

JBox2D does not like to apply force to an infinite mass,
and will get NaN values instead of 0. This is fixed by
making such objects static.

Also set friction default to 0.5
Switch the example over to JBox2D.

Unfortunately, it's not yet possible to update the JBox2D
simulation properly in response to dragging elements.
The mouse dragging behavior (and corresponding update code
in the simulation) is now disabled.