move a virtual method body to its .cpp file to avoid a #include