Removed unneeded override_system_checks

Refs #23685.
Fixed #23653 -- Fixed Windows failure of a logging test added in refs #23569.
Fixed #23663 -- Initialize output streams for BaseCommand in __init__().

This helps with testability of management commands.

Thanks to trac username daveoncode for the report and to
Tim Graham and Claude Paroz for the reviews.
Made testing of stdout and stderr more consistent.

Refs #23663.
Fixed #23686 -- Tweak color output of the system check framework.

Thanks Tim Graham for the review.
Refactored color_style() and no_style() to improve testability. Refs #23663.

This includes the following improvements:

- The type of the style object is now called 'Style' rather than 'dummy'.
- The new make_style() function allows generating a Style object directly
  from a config string. Before the only way to get a style object was
  through the environ and it also required that the terminal supported
  colors which isn't necessarily the case when testing.
- The output of no_style() is now cached with @lru_cache.
- The output of no_style() now has the same set of attributes as the
  other Style objects. Previously it allowed anything to pass through
  with __getattr__.