Refactor all the code \Add readme