Version checker.

Still needs some work, but it works for the most part. I'd be wary of
some of the methods though.