Display all branches including ambiguous ones and filter snapshots by dataset
When multiple datasets (pools) exist with branches having the same name, the current implementation has several limitations:
- GET /branches endpoint only returns the branch with the most recent snapshot, hiding other branches with the same name from different datasets
- GET /snapshots endpoint can only filter by branch name, making it ambiguous which dataset's snapshots are being retrieved
- Users have no visibility into which dataset a branch belongs to in the UI
