Intermediate

I'd be interested in comments, feedback, suggestions, and review regarding this very preliminary set of classes and interactions. Not all the test cases are there yet, but I'll work on it more this weekend.