Forgot to pass msg for FAILED message
Replaced ItemArray with IList<Item> except for the ItemsBarter and ItemsCrafted event which requires ability to instantiate IList from engine