OGM-642 Avoiding read prior to insert if possible

Adding new method `getDuplicateInsertPreventionStrategy()`on `GridDialect`. By default, we do the explicit look-up as before, but of the store itself can detect the situation, we rely on that and omit the additional read.
Good question; This base exception is not strictly needed I guess, though I
kind of like to have common base for all those exceptions which are part of
the contract between OGM core and grid dialects (currently there only is
TupleAlreadyExistsException).

So I consider it just as a "marker" for now, but if you feel strongly about
it, I can remove the super-type for now and we re-add it later on if
required.