Groups should be supported so that users can be invited or join a group with specified permissions (read/write/admin).
Groups have one or more users.
Users have one or more batches.
A batch can have its ownership transferred to a group or permissions can be granted to a group.