refactoring and more stuff
Merge branch 'master' into path_list