add data-persistence
use quit instead of stop
change reset implementation