Rhino did this 20 years ago or so. It's pretty simple really. Replace/modify the front sight housing for a gas valve/chamber. The little gas tube is replaced with a larger tube incorporating a piston and return spring. The hole in the upper for the gas tube is expanded to allow the rod to pass through. Replace the carrier key with a slightly different one for the piston. Get rid of the 3 rings on the bolt. You're done. On the Rhino system, there were three settings on the gas port so you could increase the amount of the gas for fouling. When you don't exhaust the gases into the receiver, it stays cleaner and cooler.
I doubt we would go to a polymer upper. While you could do it safety wise, i.e., add some steel tracks for the bolt carrier to ride on, I don't think it would be stiff enough to maintain accuracy with optics. For the newbys unfamiliar with the system, unlike a FAL or M14 where the bolt locks to the receiver, the AR bolt locks to an barrel extension. The receiver holds things together, but doesn't have to contain the stresses of firing. That's why you can get away with aluminum or even polymer.