allow model to be optional
allow key: val form of addBinding
commit tests