added documentation, tweaked interface a bit (test project will not compile); untested