Completely refactored: better speed, better flexibility, more reports