Not even remotely granular. Install XPrivacy[1] (which is still not granular enough for me, as it lacks filtering over function arguments) and see that categories are very broad.
Argument-level filtering would be awesome, but I don't know, the existing app+function level filtering seems to be working fine for me so far. The only real complaint I have with xprivacy now is the atrocious UI, and I'd really like some way for it to automatically fetch filters from somewhere so I don't have to bother with the permissions every time an app updates.
Not really, iOS permissions are more granular sometimes - iOS will ask you before an app accesses your phonebook, and you can deny the access. You can't do that with Android.
Android permissions are all or none at install time. iOS allows permissions to be individually toggled at any time. Some people define flexibility differently.
So, there are a few shipped phones which can have this functionality made accessible via third party app --- but update your phone and they cease to work.)
For what it's worth, if I can't do it on a phone that I walked out of Verizon with and didn't touch again, then I consider it can't-do. Custom ROMs aren't mainstream enough yet to count (despite how awesome Cyanogenmod is), and as you correctly pointed out, Android removed it from KitKat. So, until Android natively supports it in a release, it doesn't exist.
The biggest security hole next to the baseband processor and the SIM is the user who installs every app in seconds without checking permissions.