scan method
Runs all detectors and returns the detected capabilities.
Implementation
Future<NodeCapabilities> scan() async {
final results = await Future.wait(detectors.map((d) => d.detect()));
final found = <Capability>[for (final c in results) ?c];
return NodeCapabilities(found);
}