More input buffering than output. Add toString
Massive testN test
Fix history bug, and more add a unit test