Adds VersionChecker
Extracts checking to a method
Adds additional OK test cases
Never returns nil