What are some of the practical use cases of federation in git workflows ?