Added the initial Federation system framework.

All functions are currently commented out, and nothing works yet.
Merge origin/master