rename exception for version mismatch to be more clear
make dependency exceptions inherit from one catchable DependencyNotMet exception