readme & refactor