[430724] Extract the generic parts of SavingPolicy into the new AbstractSavingPolicy

Bug: 430724
Change-Id: I1ca8ffa93de5a44d480da703f5b583b461fbde36
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
[430724] isModified-based experimental SavingPolicy

A new SavingPolicy which relies on the Resouce.isModified attribute and
cross-resources dependencies to compute the list of resources to
actually save. It can be much faster than the default, but currently
does not always produce the same results, and is thus considered
experimental.

It must be explicitly setup through Session.setSavingPolicy() for users
that want to test this new policy, which should become the default when
it is considered stable enough.

Bug: 430724
Change-Id: I814de4ed4aaca3adcd022e9a616dee0c010f511a
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>