updated README and refacted