improve logo flexibility to fix wide custom logo alignment, fix #9339
Libreoffice config folder needs to be set

In order to avoid conflicts between multiple instances installed on one server, it's required to define a LibreOffice configuration folder per instance.

Just like with my PR for the documents app (https://github.com/owncloud/documents/pull/353), I propose to use /tmp/owncloud-instanceid
Initialize an event source when we start using it, not in the constructor
Add event source to the public api
Use the public api to get event sources
env:UserInstallation was already there in master

My changes were made against stable7 and I merged them to the file in master, so this version is now the properly merged file for master.
I'm just adding `owncloud-<instanceid>` to the path where temp files are stored.
Explicitly cast id and validate type
Better phpdoc and method naming
fix BadRequest error if CONTENT_LENGTH not set

If client does not send content length header on webdav upload (e.g. because the content comes from a stream and its length is not predictable) the put() method should not try to compare the content length value with the actually amount of received data, because this will always fail and results in a BadRequest exception. So the check will only be performed if $_SERVER['CONTENT_LENGTH'] is set.
Initial work on shorter links
Use a route instead of s.php and convert tokens asap
Adapt token size to new generation and add an option for free length specification

Minimum size is 3 = 46656 tokens, maximum size is 64, which is what our DB allows.
Change config.sample entry and use MediumSecurity
Use base62 and remove configuration options for link length
Readd TOKEN_LENGTH
Match \OC_Helper::linkToPublic() to new links and fit unittests
Fix configuration of rackspace
Fix hasUpdated for folders in swift backend
if only one attribute is requested, the returned array has 0 as key instead of attribute name. fixes #10888
Catch exceptions when moving files

When moving files on storages that don't expose permissions, the storage
itself might throw an exception when the permission is denied.

This fix ensures that exceptions are caught and forwarded to the client
instead of just hanging.