first try, untested
most things work, refactoring tests
refactored test page
test page pretty, everything looks good
ready for merge
typos