Очень важный момент: работа с загружаемыми отдельно модулями:
Есть класс Main в main.swf который грузит modul.swf явлющийся классом Modul, модулей может быть много, но например все они реализуют интерфейс IModul с одним единственным методом init();
Это позволит создать такую конструкцию

Код AS3:
package {
inteface IModul{
public function init():void;
}
}

Код AS3:
package {
import IModul;
public class Module implements IModul{
public function init():void{
}
}
}

Код AS3:
package {
import IModul;
public class Main{
var modul:IModul;
..
// загрузка
..
public function initModul():void{
modul.init();
}
}
}
Только IModul будет скомпилирован в обоих классах.
Это ИМХО основная задача интерфесов: служить связующим звеном между различными независимыми объектами.