WebSession: dirty session support
WebSession: dirty session support

* Adds a new property to the InvenioSession class called dirty,
  that can flag a session as dirty and hence worth being made
  persistent, in particular if it contains useful keys.

* Amended BibAuthorid usage of session.save() to use
  session.dirty = True, so that saving is performed only once
  per request.

Co-authored-by: Samuele Carli <f4ac8ffa4cb41f9fcd4673a88ee3fe2b91726001@cern.ch>

inspirehep/invenio-accounts,tiborsimko/invenio-accounts,tiborsimko/invenio-accounts,inspirehep/invenio-accounts,inveniosoftware/invenio-accounts,inveniosoftware/invenio-accounts,inveniosoftware/invenio-accounts,inspirehep/invenio-accounts,tiborsimko/invenio-accounts