Devoncarew editor types

Add a generic way for content specific editors to customize their `ace.EditSession` instance. Remove some older style content specific customization in `AceManager`. Make sure that specific content types have their correct handling for hard / soft tabs. Also, remove an unnecessary throw / catch of an exception on startup.

@umop
Follow up: I'm guessing that this might be so that the file-type has a concrete definition, regardless of `TextEditor`'s setting.  If so, though, not sure why Dart has a specific value of 2 spaces here and Go does not.