Don't propagate permissions to older revisions

Revisions are meant to be a standalone snapshot in time.
Instead of propagating changes in permissions, we should look at the
most recent revision to fetch the current revision state.
Otherwise, we lose track of history. E.g. we can't know if a certain
revision is/was suppressed and should be hidden from sight, if at a
later point, a later revision got restored.

Change-Id: I14f3ecc30cd003e40df110116a44474b6f424ecd
Split permission-logic into separate method

Change-Id: I81618dd2aa9a1cbbefb0ce494b86db3ccd18051a
Merge "Don't propagate permissions to older revisions"
Merge "Split permission-logic into separate method"