complete refactor, making a reporting tool now