Rooting
I didn't buy an Android phone until I felt sure I could root it and install a 'firewall' around the core (in my case I use xprivacy). Despite having to do that, and keep an eye on xprivacy settings too, I'm very glad I did as some of the app permission requests beggar belief.
However, I agree with comments above that such pullovering ;-) about shouldn't be necessary. There really should be a proper permissions capability built into Android right 'at the core' giving a user total control over what data and facilities can be seen/used by any application, without having to do such things as 'booting and rooting'.