refactor/modularize
whoops -- need to add these files