Added assertions to existing tests to verify they work as intended. Changed Model to a value object because we can.