re-implement todoMVC with riverjs