Add type/provider pairs for federation

This allows us to manage federation upstreams, sets of federation
upstreams and policies (which are used to setup federation and also
other things inside rabbitmq).

TODO: No test cases!
More hacking