Convert OC_Appconfig to object interface

Implemented unittest for OC\AppConfig
check for valid appinfo in installer
Style fixes
Enable appconfig asserts
Merge branch 'master' into convert-oc_appconfig
Move legacy file to correct location
fix issue with logging non utf8 chars
do not show 'Add app' and 'More apps' for themed ownCloud
Add support for multiple memcached servers.
Readd support for memcached_server config variable.
encode imagePath and fix documentation of loadFromFile
use appstoreenabled config switch
Also remove the user's home storage from the storage table when deleting a user
Use Cache->clear to cleanup the filecache for removed users
New user agent added for the Freebox.

The Freebox is the multimedia device of a french Internet provider: Free. This device provides a seedbox which uses the user agent "Mozilla/5.0". In the "Content-Disposition" header, if the "filename" key is used with the "filename*=UTF-8''" value, the seedbox does not take care about the header and saves the file name with the origin URL. This patch brings the support for the Freebox users.
Reuse the calculated free_space in buildFileStorageStatistics
Unit tests added for the new Freebox user agent.
The regexp of the Freebox user agent is now more strict.

A new unit test has been added in consequence.
change order of issubdirectory() calls to avoid error messages for non-apps
move unlink proxy to a hook which handles pre and post conditions