implemented rule/ruleset io
updated graphical theory to include new IO structures
removed old convenience IO structures, all tests pass with new IO structures