Add IDGenerationError and ignore in exists? method

This allows the exists? method to ignore errors in generating the ID, which should indicate that the object does not exist