minor refactor and comments
first upload