patch 8.1.1981: the evalfunc.c file is too big

Problem:    The evalfunc.c file is too big.
Solution:   Move undo functions to undo.c.  Move cmdline functions to
            ex_getln.c.  Move some container functions to list.c.
diff --git a/src/proto/ex_getln.pro b/src/proto/ex_getln.pro
index 12fd3be..a2f092d 100644
--- a/src/proto/ex_getln.pro
+++ b/src/proto/ex_getln.pro
@@ -28,9 +28,10 @@
 void escape_fname(char_u **pp);
 void tilde_replace(char_u *orig_pat, int num_files, char_u **files);
 cmdline_info_T *get_cmdline_info(void);
-char_u *get_cmdline_str(void);
-int get_cmdline_pos(void);
-int set_cmdline_pos(int pos);
+void f_getcmdline(typval_T *argvars, typval_T *rettv);
+void f_getcmdpos(typval_T *argvars, typval_T *rettv);
+void f_setcmdpos(typval_T *argvars, typval_T *rettv);
+void f_getcmdtype(typval_T *argvars, typval_T *rettv);
 int get_cmdline_type(void);
 int get_cmdline_firstc(void);
 int get_list_range(char_u **str, int *num1, int *num2);