introduce preCondition for setUserValue to provide atomic check-and-update
make AllConfig unit tests more robust against not cleaned up environments
Workaround to fix the too early init dilemma

* this needs to be properly fixed by a proper organisation of the base.php
* introduced fixDIInit() in AllConfig that moves the injection
  of DatabaseConnection to a later point in time
* problems mostly because of the autoconfig setup
reduce OC_Preferences and OC_Config usage

* files_encryption
* files_versions
* files_trashbin
* tests
* status.php
* core