COMP: Simplify external project includes & passing of CMake vars to project

A new module named "ExternalProjectDependency" has been introduced, it is
equivalent to the Artichoke module at revision commontk/Artichoke@70ed903.

This new module is now used within Slicer to support its build system. To
maintain backward compatibility with existing extensions, the modules
"SlicerMacroEmptyExternalProject" and "SlicerMacroCheckExternalProjectDependency"
are kept around.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22773 3bd1e089-480b-0410-8dfb-8563597acbee