This PR improves the error message when `FontCache.load_family` attempts
to load a font that is not present on the system.
I ran into this while trying to run the `storybook` for the first time.
The error message indicated that a font family was not found, but did
not provide any information as to which font family was being loaded.
### Before
```
Compiling storybook v0.1.0 (/Users/maxdeviant/projects/zed/crates/storybook)
Finished dev [unoptimized + debuginfo] target(s) in 8.52s
Running `/Users/maxdeviant/projects/zed/target/debug/storybook`
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: could not find a non-empty font family matching one of the given names', crates/theme/src/theme_settings.rs:132:18
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
libc++abi: terminating due to uncaught foreign exception
fish: Job 1, 'cargo run' terminated by signal SIGABRT (Abort)
```
### After
```
Compiling storybook v0.1.0 (/Users/maxdeviant/projects/zed/crates/storybook)
Finished dev [unoptimized + debuginfo] target(s) in 7.90s
Running `/Users/maxdeviant/projects/zed/target/debug/storybook`
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: could not find a non-empty font family matching one of the given names: `Zed Mono`', crates/theme/src/theme_settings.rs:132:18
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
libc++abi: terminating due to uncaught foreign exception
fish: Job 1, 'cargo run' terminated by signal SIGABRT (Abort)
```
Release Notes:
- N/A
Rather than assuming a specific family exists, try a set of specific
names and if they fail, just grab any old font that the system reports
as existing
Co-Authored-By: Nathan Sobo <nathan@zed.dev>