use coerce in update()
fix code
fix bug
95% test coverage
Roadmap