fixes, tweaks, restructuring, refactoring