Add class
No static. Use instance instead
Allow configuration in construct
Do not call stop in shutdown function if it's not required
Allow to not log report