Rich web editor in JavaScript, allowing WYSIWYG HTML5 editing