base version starting to refactor and improve
commented out some items, added comments, before cleanup
cleanup and add TODOs