Make the code a bit more compact.
Allows add custom tools

And no longer creates the attribute toolName for the tools.

NOTE: This change also fixes a regression produced
by b467678344952fc2d305b62d0f1ef157f4830a47 (now dx0 is dx1 and
vice versa so tool is moved after the feature is modified)
Improve documentation of ModifyFeature-tools.js.
Update docs