New structure to go straight into CommonJS / AMD