merge upstream changes and update README