remove dead code; add tests