find<T>  method 
Find a dependency by type and optional tag (searches hierarchy)
Implementation
T? find<T>({String? tag}) {
  if (_disposed) {
    return null;
  }
  // First try in this scope
  final result = findInThisScope<T>(tag: tag);
  if (result != null) {
    return result;
  }
  // If not found and we have a parent, look there
  return parent?.find<T>(tag: tag);
}