chore(access): Pull most acl logic into an OO service

Refs #3568
Merge pull request #7435 from ewinslow/oo-access

chore(access): Pull most acl logic into an OO service