Fix #900

1. now saving outerHTML data to mongo to match with publishing outerHTML data
2. replacing outerHTML also solved the issue of ceci-apps within ceci-apps
3. when remixing or loadAppByUrl, we create a new appid and overwrite so that you can't re-use the existing app ID in your remixed app