DebtHunter: A machine learning-based approach for detecting self-admitted technical debt