Rather than add a legacy flag onto the existing ComputeLogManager (D7945),
this diff creates a separate interface for a InstanceLogManager class. We could
either do inheritance checks on the instance compute log manager, or pull this out as
as a separate property on the instance.
The new API explicitly separates out the log file data and the log file metadata.
It also adds an abstractmethod `log_event`, which can either initialize an
in-process DagsterLogManager and call log (outside of a pipeline context), or initialize
the python logging handlers (@sandyryza, RFC). This should be called from
`DagsterInstance.handle_new_event` (e.g. whenever we are creating an event outside
of a pipeline context)