patch 8.0.1523: cannot write and read terminal screendumps

Problem:    Cannot write and read terminal screendumps.
Solution:   Add term_dumpwrite(), term_dumpread() and term_dumpdiff().
            Also add assert_equalfile().
diff --git a/src/proto/eval.pro b/src/proto/eval.pro
index ba7dcec..6f16ce0 100644
--- a/src/proto/eval.pro
+++ b/src/proto/eval.pro
@@ -122,6 +122,7 @@
 void prepare_assert_error(garray_T *gap);
 void assert_error(garray_T *gap);
 void assert_equal_common(typval_T *argvars, assert_type_T atype);
+void assert_equalfile(typval_T *argvars);
 void assert_match_common(typval_T *argvars, assert_type_T atype);
 void assert_inrange(typval_T *argvars);
 void assert_bool(typval_T *argvars, int isTrue);
diff --git a/src/proto/terminal.pro b/src/proto/terminal.pro
index 4b39daa..9c29683 100644
--- a/src/proto/terminal.pro
+++ b/src/proto/terminal.pro
@@ -21,6 +21,10 @@
 char_u *term_get_status_text(term_T *term);
 int set_ref_in_term(int copyID);
 void set_terminal_default_colors(int cterm_fg, int cterm_bg);
+void f_term_dumpwrite(typval_T *argvars, typval_T *rettv);
+int term_swap_diff(void);
+void f_term_dumpdiff(typval_T *argvars, typval_T *rettv);
+void f_term_dumpload(typval_T *argvars, typval_T *rettv);
 void f_term_getaltscreen(typval_T *argvars, typval_T *rettv);
 void f_term_getattr(typval_T *argvars, typval_T *rettv);
 void f_term_getcursor(typval_T *argvars, typval_T *rettv);