Avoid read/write access to Setuid storage

Move code that is only required if setuid or setgid permission
attributes are modified to the right place. No need for every
files promise to touch the disk for this.

Don't save the list if code hasn't modified it.

A future improvement might be to load the list at agent startup
and flush it at shutdown, but assuming that setuid/setgid modifications
are the exception, this shall suffice for now.
Merge pull request #1980 from vohi/redmine/6523-setuid

Redmine 6523: Avoid read/write access to Setuid storage