EZP-22960: Made DFS FS backend configurable

> Implements [EZP-22960](http://jira.ez.no/browse/EZP-22960)
> Status: ready
> Usage example: [DFS dispatcher prototype extension](https://github.com/bdunogier/ezdispatchabledfs).

A new INI setting, eZDFSClusteringSettings.DFSBackend, is introduced that sets the backend class used by DFS. The backend instance is provided by static methods in `eZDFSFileHandlerBackendFactory`.

If a backend implements `eZDFSFileHandlerDFSFactoryBackendInterface`, it will be constructed using a `build()` static method. If it doesn't, an instance will be created using `new`.

### Todo
- [ ] Add a feature file
CS: Missing WS before `)`