- Initial implementation of composed modules: A module may extend
  another module (which must have been previously loaded) and will
  then be merged with the parent module to create just one, with a
  composite class loading and a superset of all provides.
# TODO: [ ] Run initializers? [ ] Adjust tests and make them work again
# [ ] Measure performance [ ] Think about establishing provides => CL
# relation [ ] Document [ ] Merge with class loading hierarchy idea