PackageManagerService: update grantPermission / revokePermission

Currently, grantPermission / revokePermission only handles development
permissions. This change extends these two functions to handle normal
and dangerous permissions.

A normal / dangerous permission can modified if it is marked as
optional (android:required="false") using the "am grant" / "am revoke"
commands.

Currently, this change is a no-op. The package parser code
does not currently honor <uses-permission android:required="false"> in
the application's manifest, and assumes a permission is always required.

This change sets the ground for future optional permissions work.

Change-Id: I34f02ffd714e8a9a37b9f87df89cef915b1b6780
1 file changed