add Reportable trait
Remove abstract reporter
use ListenerAggregateTrait