Merge pull request #6865 from takluyver/cm4.7

Update components to codemirror 4.7
Basic infrastructure for new texteditor component
Loading a file works
Saving files works
Refactor editor into Editor class
Enable codemirror search/replace shortcuts