reworking the structure
wip
data gens converted to smart pointers
reworking framework
adding app class
before reworking the factory
reworked sorting algorithms to use smart pointers
refactored working version
updating the random generation