These functions were moved from DraftTools and DraftGui
to individual modules precisely to make them easy to import.
Otherwise we have to import the entire DraftTools and DraftGui
modules which creates dependency problems when we want to use
some functions without the graphical interface.
It replaces the older `Draft_Array` command, and provides
a task panel to select the properties, similar to the
`Draft_PolarArray` and `Draft_CircularArray` commands.
It can also create `App::Links` directly from this task
panel, so it also replaces the `Draft_LinkArray`
introduced by the LinkMerge.
See: https://forum.freecadweb.org/viewtopic.php?f=23&t=43228
It fixes the following issue:
Allow the use of sketches for Structure which follow a Tool. Currently, sketches are only accepted as structure Base when there is no Tool set. If I select the sketch and press the Structure button, the structure is computed correctly. But when I set the Tool property, the message "Structure has no solid" is reported and the Structure is not updated.