starting to think about multiprocessing
rename to all .hpp; still need to refactor #includes
survived refactoring