35676 remove deprecated apis

- Remove deprecated APIs from CDTDatastore and associated tests from code base.
- Remove usage of deprecated APIs from todo sample.
- Rename description property in CDTTodo  to taskDescription, stops it conflicting with NSObject description 
- Set ivars directly in CDTTodo init method
- Add an API migration document to assist users in migrating to the new API

The biggest area to focus on for this review is the addition of the API migration doc,
This document needs a few more drafts. While the information is broadly correct, there are awkward sentences and the punctuation is awry. There are also some typos (e.g., `it is possible to simultaneously set the body attachments
and attachments`) which are misleading.

The document needs to give more context at the start:

- What's the "new API"? What's the "old API"?
- A list of removed methods.

If you list the removed methods at the start, you can probably avoid the tiring lilt inherent in the "you used to do this [...], now you do this [...]", instead just listing the new ways to add, remove and modify documents.

Other notes:

- Inline code, as opposed to code blocks, uses single back ticks not triple.
- Line up the asterisks properly in code samples, and other spacing issues.
- Line lengths in the code samples are large, consider shortening (e.g., using shorter variable names).
- I'd consider moving attachment samples into the main CRUD sections, to reinforce the fact they are now the same operation.