add some features and update readme