Rename setup-development -> setup-repository
Add YCMInternal.cmake

It adds the following functions for internal use:
 - _ycm_target()
 - _ycm_download()
 - _ycm_install()

These targets allow to download files and to perform the copy in the
build directory during build phase instead of during configure phase

See Issue #53
IncludeUrl: Support QUIET argument

If enabled it won't print STATUS messages.
Update sha1sum
Merge branch 'IncludeUrl_QUIET'
Use function from YCMInternal for cmake-next

Issue: #53
Use _ycm_install to install all modules

Fixes #53
Download and install FindEigen3.cmake from Eigen mercurial repository

Fixes #25
ExternalProject: Fix SCM_DISCONNECTED patch

Always perform the skip-update target, forcing following steps to be
executed. This causes the configure, build, and install steps to be
executed and therefore changes to subprojects are now correctly
detected.

This also means that since the steps are now executed every time, build
takes more time and prints more unuseful output. The alternative is to
have a target to force the build when something changes, but it does not
seem to me a sufficiently generic solution.

Fixes #26
Update sha1sum
Merge branch 'ExternalProject_SCM_DISCONNECT_fix_skip-update'