refactor in progress
WIP
fix some stuff