Permission: keep a space if the permission is empty

To distinguish no permission present to nothing is allowed.
That was the intention of the old code but it did not work as
the first if was always taken
cmake compilation flags:  don't define -Wdeclaration-after-statement

We are in 2014, let me use C99 already.
csync_update: update the permission in the db when they change

The current code only update the permissions in the DB when
the permission becomes non-empty.
Now we update the permission each time they change.

That way the code is the same for file id and permission so it is
simpler.
propagator: Fix folder duplication if the folder is renamed on the server while uploading

While uploading a new folder, if the folder is renamed on the server
when still uploading, the result will be that the files that are already
uploaded will end up in the new filder name, but the file that were
not still are in the old folder.

After renaming, all the new uploads wil fail with an error on this sync
because the parent directory don't exist.
But they were uploaded with the old name in the next sync because
the renaming was not detected because the file id was not in the DB

Fix the problem by fetching the file id always when creating a new
directory, on the next sync, and saving it in the database ummediatly

https://github.com/owncloud/enterprise/issues/191
Enable C++11

In order to avoid the warning
 warning: anonymous variadic macros were introduced in C99
Due to the use of variadic macro in the qDebug macro in Qt 5.3

C++11 requires a space between string literal and macro to avoid the
ambiguity with user defined litteral
httpcredentials: Remove useless mutex

The mutex is not shared with any thread, so it is totaly useless.

Yes: there are possible races here. (with the account, but also with the
user and password)
Add t7.pl   Test for operation of files with restrictions
t7.pl:  Test that deleting a directory restores it and all its sub directories
Permissions:  fix restoring subdirectories

The sync item vector must be sorted before we call checkForPermission
Permissions: When moving is not allowed, fallback to delete and upload

We decided that we never want to rename a directory behind the
back of the user as the user may be using files in the directory
during the sync.
If moving is not allowed, we just erase the inode form the database so
the next sync will try to do an upload and delete and recover from there
using normal resolution.

This also add some code to update the inode back to the db when it is detected
as changed.
Merge remote-tracking branch 'origin/il'