I would like Functions to be able to manipulate collections independently of the rules created for them.

Functions are flexible enough to implement any access control you wish. And I find it inconvenient to create rules that match some complex scenarios, like updates on documents with versioning (preserving in the db all previous versions of a document).