Fixed typo in //curve's help.

Fixes WORLDEDIT-3025.
Shortened /schematic command descriptions.
Updated //help with colors and sub-command support.
Improved re-use of command help formatting.
Implemented -? and changed handling of InvalidUsageException.

Fixes WORLDEDIT-2947.
Handle exceptions thrown from bindings as a convertible InvocationTargetException.

For example, if IncompleteRegionException is thrown by a binding, it
will result in a InvocationTargetException now with a getCause(),
which gets handled as if that exception was thrown from the actual
Method that is invoked for the command.
Cleaned up InvalidUsageException and CommandException to be less confusing.
Removed gold color from CommandUsageBox for command help.
Added "Usage: " back when handling InvalidUsageException.
When sorting commands for //help, ignore / characters.
Sort commands for Dispatchers in CommandUsageBox.
formatting.components -> formatting.component
Added changes to formatting package in some classes.
Added Transform.inverse() as a standard operation.
Identity.combine(other) should just return other.
Added utility Transforms class.
Extracted CommandMapping interface.
Removed CommandCallable.getValueFlags().

Parsing of arguments is no longer done automatically so this method
is extraneous.
Clean up ParametricCallable.
Fixed handling of legacy Command.flags/.anyFlags.

Fixes WORLDEDIT-3137.