refactor: eat your own dogfoot
adding tests
some refactoring, code cleanup, check if parent is moved and move folder
updated todo in README