32818 add attachments

- Added attachment handling to CDTMutableDocumentRevision via the attachments property
- Depercated old attachment API in CDTDatastore+attachments.h
- Created new Attachment CRUD tests based off AttachmentCRUD.m
You could change the logic here, by removing the first [downloadedAttachments addObject:attachmentData] and taking the second one out of the else block so that it always happens. That seems clearer to me.

Maybe also some comments explaining the logic: "if the attachment hasn't been saved to the blob store yet..." etc. The primary case where the attachment is already a CDTSavedAttachment would be where the attachment is copied from an existing mutable doc.