Revert the change to Polynomial.cpp
Reinstate override and turn is_class into a macro