updated readme and corrected relevant code smells