update README & refactoring