Structural and behavioural tests for student code that tolerate small naming deviations (Levenshtein distance), built on Ares 2