I wonder if `IntegrationManager` should actually expose this method.

How would you feel about `IIntegration Detect()`?
 - This may behind the scene indeed rely on invoking `IIntegration.IsRunningInBuildAgent()`.
 - I'd suggest to throw if more than one `IIntegration` are detected as valid.
 - If none are found, we could still return a `NullIntegration` or `LocalIntegration` type.