A JavaScript compiler that compiles AMD modules that communicate using only events