The previous `_sort` used a method called `_requires`, which when possible looked at the `expanded_map` property of a module, X. The modules located in the `expanded_map` should come *before* X.

The new `_sort` avoids all of that, and strictly looks at the `requires` property of a module now. We can still emulate the `before` behavior just using the `requires` property (see the original post which has the example, and explains it).