Overhaul "external editor" facility

Since the introduction of a better editor into UECIDE a long time ago the
ability to use an external editor was lost.  This update fixes that by properly
disabling the editor's editing ability when external editor is enabled, and
whenever the compile button is pressed it reloads all the files back into the
IDE before doing anything else.