From a "developer" point of view today android fragmentation is extremely low. It was a problem ith GingerBread (2.3.x), but API difference between all 4.x versions are negligible. Basically all the functions/services/effects are available across the 4.x releases. It means you can target about 85% of Android devices with a single binary. It could be a problem again with next release (Android-L) that should contain an under-the-hood overhaul of the UI framework, with several incompatibilities.
You're right... 85% of Android users can take advantage of the features across Android 4.X dating back to 2011.
So to be safe... a developer should target Android 4.0 to reach the most users. You have to appeal to the lowest common denominator.
But if there was some amazing feature introduced in Android 4.4.... the audience is MUCH smaller since not many people have Android 4.4
And that's the struggle. Android has a lot of users... but not many of them can use the latest features in the current version of Android. Developers are forced to look back instead of moving forward.
And it will only get worse. Google announced 5,000 new APIs with Android L. Great, right?
But if a developer wanted to use those APIs in their apps... the devices would need Android L
Looking back at history... it takes YEARS for any particular version of Android to reach a meaningful percentage of Android users.
Developers will ignore those 5,000 new APIs in Android L and continue to support Android 4.X instead.
It might take until 2016 or 2017 until enough phones can support the features of Android L and above.