Make 'create_or_get' correctly support composite unique indexes and keys
Hmm... I received another pull-request with similar changes a while back and passed on it due to the complexity it introduced. My current thinking is that it'd be better to just remove `create_or_get` since it seems to cause confusion and the code one would need to write to work around it is very concise:

```python
try:
    return MyObj.create(whatever='foo')
except IntegrityError:
    return MyObj.get(MyObj.whatever == 'foo')
```

To me the result does not justify the means (and the subtlety involved). So I think in the next minor release I'll just remove the method instead.
This fixes #1204 