Consistent extension ordering

Extensions are now always stored in order (by name). Entry points may
be found in any order which can break tests. This patch keeps
extensions in a consistent order between runs.

Fixes issue #34