This patch adds support for filtering the repository on the basis of
func.cmdtype. After this patch, repo.filtername will be used to decide what
level of access the running command can has on hidden commits.
All this logic is behind a config flag experimental.directacess which defaults
to False.