The shift is a neat idea, and against some hitters, it's a useful tool. I don't think it should be illegal, and I don't think it slows down the game.
If you're worried about length of game, make the batter stay in the box like they do in MiLB and have the umpires enforce delay of game on pitchers. The shift doesn't make games longer.
The idea of shifting OFers around for different hitters is, I think, a good idea, especially when you have a Revere/Delmon LF/RF situation, or something like that. Good idea, and something I'd be much more in favor of than the shift.
That being said, back to my original point, I think the shift is useful, and when deployed correctly it helps stop some hits. Not sure how much it does, or if the shift has any type of staying power in the league, but it's here now until hitters begin to adjust. Could that be a generational thing while we wait for more players with better bat control to come through systems and big power bashers who strike out all the time to retire?
Let them play where they will defensively.