Added comment functionallity
refactoring some methods