saving state
saving state
merging files
retaining non-js functionality