Initial code. Very basic tests.