Initial work for conversion to variadic interface.
Initial Version
Cmake package cleanup.
Interface unification work in progress
Squashed 'contrib/cmaketools/' content from commit 75cdaeb

git-subtree-dir: contrib/cmaketools
git-subtree-split: 75cdaeb9e99983e53e94c14cf0f7eaaf695bc284
Merge commit '9ca1cf8f9201bf328243b1ba540112b71a717df1' as 'contrib/cmaketools'
Fix entity build option.
Change warning to status.
Merge commit '75cdaeb9e99983e53e94c14cf0f7eaaf695bc284'

Conflicts:
	contrib/cmaketools/external_git.cmake
Merge commit 'd281fc3ae982d76d019a806b74bf9acab2583844' into unified_interface
Change warning to status
Merge commit '6180cb183532e497c9a67d00d0d0102f7cc46425' into unified_interface
Automatic configuration of external git projects.
Merge commit '487b05075c39796c658e108a96bdd6b7c26d7c79' into unified_interface

Conflicts:
	contrib/cmaketools/entity/entity_component_iterator.h
Fix up build to handle new daily loacation and find process.
First version of unified interface.
Instrumentation vs new unified_interface
Better performance
- Removed entity array
- lifted some iterator ligic to iterators from entity_component_iterator
- Removed const ref from functors.
- Best performance to date on gcc +50% of raw loops.
Cleanup comments, include guards, some sprious references, etc.