Проблема в следующем:
- Шаг 1: вызывается imports в init.js
- Шаг 2: вызывается imports в support_html5
- Шаг 3: вызывается imports в espionage
Проблема в том, что выполнение onSuccess привязанно к onload событию, которое происходит независимо от того загружены ли все зависимости или нет.
Таким образом при загрузке support_html, функция onSuccess из init.js выполнится в любом случае, а вот функция onSuccess из support_html не выполнится, так как у него есть зависимости.
И тогда получается случай, когда support_html загружен, но его тело не выполненно, и соответсвенно объекта support_html не существует, так как до сих пор подгружаются зависимости support_html5
Лечить это нужно другой системой вызова onSuccess/onError функций.
PS
Можно перестать велосипедить, и использовать requirejs(как я посоветовал ранее) для загрузки зависимостей.