major code & design refactor, using gulp for build & start
prompt user if he did not save