This makes two changes: 1. ListPermissions assumed every grant string had a type field, which does not match all grant formats. It now infers type from ID for formats which do not specify type. 2. Allow ID-only grant strings to be valid so long as the type specified matches the type of the specified ID.