Added some basic classes, and corresponding tests

Mostly infrastructure added.