This function checks for both mode names and mimetypes, but we only ever pass in the mode name.  It seems like checking only mode name is enough, so maybe _hasMode() could be simplified?

Also, could we rename it to make it clearer -- it could be read as telling whether _we_ (Languages.js) "have" the language already registered, not whether CM has it loaded & registered...