[Config][WIP] Refactor ResourceInterface and resource checking as per #7176

This is work in progress, requesting early input from the community :-)

The basic idea is to redesign ResourceInterface and cache validation as per issue #7176. Probably we won't get along entirely without BC breaks.

This change should enable us to fix issue #5159 and also [issue 168 from AsseticBundle](https://github.com/symfony/AsseticBundle/issues/168).

The PR also includes changes from [PR 5912](https://github.com/symfony/symfony/pull/5912).

__To-Dos:__
- [ ] Add support to FrameworkBundle/container config to add/inject ResourceValidators from the DIC
- [ ] Discuss BC breaks
- [ ] Discuss class naming and namespaces, possibly move files
- [ ] Conceptually decide how to handle nonexistent resources
- [ ] Add tests for new functionality
- [ ] Document changes