begin organizing things better, work on enum classes to contain low level options