Our well-known errors, like ErrUnsupportedDataSource, are currently set as error values, not types. We may want to evaluate making them less well-known, or returning fmt.Errorf wrapped versions, to force people to use errors.As instead of doing equality comparisons. This would give us a more flexible posture for future changes than we currently have.