Remove much dead code from ceval.c

The descr changes moved the dispatch for calling objects from
call_object() in ceval.c to PyObject_Call() in abstract.c.
call_object() and the many functions it used in ceval.c were no longer
used, but were not removed.

Rename meth_call() as PyCFunction_Call() so that it can be called by
the CALL_FUNCTION opcode in ceval.c.

Also, fix error message that referred to PyEval_EvalCodeEx() by its
old name eval_code2().  (I'll probably refer to it by its old name,
too.)
diff --git a/Include/methodobject.h b/Include/methodobject.h
index a205011..e47ebea 100644
--- a/Include/methodobject.h
+++ b/Include/methodobject.h
@@ -14,6 +14,7 @@
 typedef PyObject *(*PyCFunction)(PyObject *, PyObject *);
 typedef PyObject *(*PyCFunctionWithKeywords)(PyObject *, PyObject *,
 					     PyObject *);
+typedef PyObject *(*PyNoArgsFunction)(PyObject *);
 
 extern DL_IMPORT(PyCFunction) PyCFunction_GetFunction(PyObject *);
 extern DL_IMPORT(PyObject *) PyCFunction_GetSelf(PyObject *);
@@ -27,6 +28,7 @@
 	(((PyCFunctionObject *)func) -> m_self)
 #define PyCFunction_GET_FLAGS(func) \
 	(((PyCFunctionObject *)func) -> m_ml -> ml_flags)
+extern DL_IMPORT(PyObject *) PyCFunction_Call(PyObject *, PyObject *, PyObject *);
 
 struct PyMethodDef {
     char	*ml_name;
@@ -44,6 +46,9 @@
 #define METH_OLDARGS  0x0000
 #define METH_VARARGS  0x0001
 #define METH_KEYWORDS 0x0002
+/* METH_NOARGS and METH_O must not be combined with any other flag. */
+#define METH_NOARGS   0x0004
+#define METH_O        0x0008
 
 typedef struct PyMethodChain {
     PyMethodDef *methods;		/* Methods of this type */