Mastodon is Gnu Affero GPL and you can get code from github and run your own instance. How is that not federated and open?