remove duplicate requirements
provide virtual package

This virtual package will be required by libraries that need an
implementation of it but don't want to force one in particular.
Merge pull request #349 from greg0ire/dependency_management_improvements

Dependency management improvements