fix (timeout)

test if the instance is nil before check timeou
WIP

add return instanceID
add enable/disable batching
todo: change propose to accept a group of commands instead of one
todo: add committed and executed in instance
feat (propose, CommittedNotify, ExecutedNotify)

add list argument to propose()
add CommittedNotify, ExecutedNotify
chore(demo)

enable pure flags
Merge pull request #81 from yifan-gu/propose

Propose