more script includes
some minor changes
promise generator function