Templates, inheritance & extension