readme updated, some refactoring