Allow PK of different length on +instancesWithPrimaryKeyValues

`instancesWithPrimaryKeyValues:` would construct a bad query if the PK had length != 2 and we were querying for more than SQLITE_LIMIT_VARIABLE_NUMBER primary keys.
The limit is 500000 though, so I suppose it's difficult to hit.