- node: { edit, view }
- editlet: {name: opt, ... }
- default editlet: cm
- renderer(fs): return payload = {html,css,js}
- TODO: assets?
- cm api might need to be exposed.
- e.g., some features might need listening to cm blue / focus event ( such as inserting image )