Changed compatible function to give a proper ordering
Lib to deal with package version numbers