Use DI for principal backend

Required for https://github.com/owncloud/core/pull/12960