Is anyone taking advantage of different prices across exchanges? Say I have funds on two exchanges. Whenever the price of bitcoin is higher on the first one, I sell on that one and buy on the other one. 

Is anyone doing this or has a program that does this? Is it even possible?
This is possible and many people do it, but the loop can be significantly delayed by the time it takes to transfer fiat between exchanges. There may be automation software out there, but it is likely closely guarded by those who employ it. There is still the manual step of coordinating fiat movement.