apply the c++11 'override' keyword to overriding virtual functions