I'm planning to have my serpentine belt replaced, and while in there also replace the water pump and thermostat. I've heard various pumps are offered or have been used with this engine - metal impeller, plastic impeller, after-market ball bearing "upgrade", etc. Does anyone have experience with which pump is best? I think my mechanic recommends the BMW factory pump with the plastic impeller (he's a factory parts kind of guy). But I'm always looking to upgrade while I'm in there - if it's really an upgrade.