Everything you describe can be done with a group, no code, except for cases you want to deliberately change.
The advantage of containers is the underlying code which allows you to see membership, placement ordering, growing in size as members are added/changed. Said code also moves members with the container. But, unlike a group, the members Pins X and Y refer to page location rather than parent location. It's built-in. It would, indeed, take code to lock the relative positions. Conclusion: for your specifications, stick with group.