Rework ProvenanceStorageInterface to have a single add method per entity
All entities now have a single <entity>_add method in the interface, with optional
associated date if applicable. A new location_add is also added to the interface.
Extend all backend implementations to support the new methods. Add pre-condition to
relation_add (relying on the new methods) which simplifies its different implementations.