Refactor workspace and workspace factory

Added MED_WORKSPACE_INTERFACE macro in medAbstractWorkspace, which
automagically creates a series of static and instance methods to
standardize and simplify the regsitration of a workspace. Also, sorts
workspace by name in the menus.
Refactor data and data factory

Added MED_DATA_INTERFACE macro in medAbstractData, which
automagically creates a series of static and instance methods to
standardize and simplify the regsitration of a data type.
Refactor toolbox and toolbox factory

Added MED_TOOLBOX_INTERFACE macro in medtoolbox, which
automagically creates a series of static and instance methods to
standardize and simplify the registration of a toolbox.
Refactor settings widget and setting widget factory

Added MED_SETTINGS_INTERFACE macro in medtoolbox, which
automagically creates a series of static and instance methods to
standardize and simplify the registration of a setting widget.