Just a note to albuyeh, If you want to do it on the cheap, you can ad the factory aux jack (costs like $50) and is super easy to install to the factory head unit. You could then use your zune or whatever over your current system. You still have to control song choice from the zune/ipod/phone, but volume is from the factory controls. I plug it into my evo. the navigation, audio, and phone calls come over the OEM sound system, and works perfectly for $50 and an hour of time. I have the HK on my M3 Vert, and plan on spending some bucks for the BSW stage 1 speaker replacements and sub.
I have an android Dynavin that I haven't installed yet... next week. for $650 you cant beat a full nav system with bluetooth, sound system, and perfect factory look.. I welcome you to find someone who will want to buy your Bimmer after you hacked the dash up to put in some pioneer or kenwood that will never even look close to OEM. I have yet to see a clean install of any aftermarket stereo that looked good in a BMW.
You could also spring for a dice, to get all the connectivity you could dream of, but you have to give up your trunk changer I think (not a huge loss..).. You could put more music on a 64Gb usb card than all of the discs in your changer.
Just my thoughts.. Good luck!