Designing Swift Errors for an SDK

Errors designed for an SDK are different than errors for an app, because errors become API contracts. We describe the pattern we use in RecordKit.