Bypass font enumeration if a DTCoreTextFontOverrides.plist file is provided

This fixes a performance issue. Retrieving all the system fonts is quite
slow; and although this is done on a background thread, the parsing will
block until the overrides table is built.

So, if a DTCoreTextFontOverrides.plist is found, consider it canonical
and don't build the overrides table dynamically.

This issue is discussed in https://github.com/Cocoanetics/DTCoreText/issues/453.

NB: although the diff is a bit large, it is mostly re-ordering the existing code and wrapping it in a condition.