more tests, better comments