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);
diff --git a/src/proto/list.pro b/src/proto/list.pro
index 7a1ce7a..ae8a732 100644
--- a/src/proto/list.pro
+++ b/src/proto/list.pro
@@ -43,4 +43,10 @@
 void f_uniq(typval_T *argvars, typval_T *rettv);
 void f_filter(typval_T *argvars, typval_T *rettv);
 void f_map(typval_T *argvars, typval_T *rettv);
+void f_add(typval_T *argvars, typval_T *rettv);
+void f_count(typval_T *argvars, typval_T *rettv);
+void f_extend(typval_T *argvars, typval_T *rettv);
+void f_insert(typval_T *argvars, typval_T *rettv);
+void f_remove(typval_T *argvars, typval_T *rettv);
+void f_reverse(typval_T *argvars, typval_T *rettv);
 /* vim: set ft=c : */
diff --git a/src/proto/undo.pro b/src/proto/undo.pro
index de918fc..93b9909 100644
--- a/src/proto/undo.pro
+++ b/src/proto/undo.pro
@@ -28,4 +28,6 @@
 int bufIsChangedNotTerm(buf_T *buf);
 int curbufIsChanged(void);
 void u_eval_tree(u_header_T *first_uhp, list_T *list);
+void f_undofile(typval_T *argvars, typval_T *rettv);
+void f_undotree(typval_T *argvars, typval_T *rettv);
 /* vim: set ft=c : */