Use enum for PlatformVersion to avoid relying on float comparison.

It's easy to forget to put an 'f' after a float literal,
which will cause comparison with a float to return false.

E.X:

float platform = 1.1f;

if (platform == 1.1) {
// this is probably what is intended to run
} else {
// this is what is actually run
}