Report generation module refactoring. Added features support, new tests.