Use the core primary key functionality

Not sure this is actually a net improvement. It eliminates `RLMSetValueUnique` and `verifyPrimaryKeyUniqueness` (and the equivalent core functionality for that is probably much faster), but inserting new rows in a table with a PK is kinda awkward.

Requires a new core release for the tests to pass.

@alazier