tests drafted, not quite compiling