I think there is one technical argument for 3.1.1.
It's often been observed that as PCs kept getting faster, apps stayed at the same speed (or even slowed down), as layers of abstraction soaked up the extra cycles. To remain snappy, the iPhone simply can't afford that. At least not yet.