Fixes #7566 - added support for dependeces among modules

Do not merge before docs and tests are added.

In module config YAML add `:require:'  <module> or list of modules e..g.:
```yaml
:katello:
    :enable_module: true
    :require: 'foreman'
```
Support for circular deps detection included
Are you sure we want to hide the loading problems and do a fallback to "unsorted" mode?