Added metapackage validation module

Split metapackage validation into small functions

metapackage.py: follow sphinx documentation rules

See: http://sphinx-doc.org/markup/desc.html#info-field-lists

relocate package_exists_at to packages.py

Replaced triple single quotes with double quotes

Use metapackage CMake template from cmake.py

metapackage.py: Added :py:class cross references

parameter for warnings out in validate_metapackage

package.py: use metapackage.py for checks

metapackage.py: Fix circular dependency

test_metapackage.py: capture stderr with stdout

move package_exists_at to package.py from packages.py

moved logic into package.py from metapackage.py to fix circular dependency

has_invalid_dependencies -> has_invalid_metapackage_dependencies

Remove leftover files check