If you store the version on the device, the user would simply have to delete the app (which wipes all data the app has stored on the device) and re-download from the app store (which is free) to get the latest version. It's not going to take long for users to notice that and then you'll never sell an upgrade again.
So you'd need to move away from a straight app and also create a server component. But to store it on the server, you need something that uniquely identifies the user.
You can't get access to the UDID any more (and besides, people would catch on when upgrading their phone got them new version of everything for free).
You can't generate some kind of GUID, because that has the same problem as just tracking it on the device. Upgrades are just a reinstall away.
And you can't force them to sign up for your site on first launch: App Store reviewers won't approve apps that make users register solely to store information about them. So you'd need to push content through the site, at which point you've moved well beyond the purview of most apps, and you ought to just give up the game and sell access to the content itself.