refactored comments controller