patch 8.1.1195: Vim script debugger functionality needs cleanup

Problem:    Vim script debugger functionality needs cleanup.
Solution:   Move debugger code to a separate file.  Add more tests. (Yegappan
            Lakshmanan, closes #4285)
diff --git a/src/Makefile b/src/Makefile
index bee20ae..cf23ca8 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -1579,6 +1579,7 @@
 	charset.c \
 	crypt.c \
 	crypt_zip.c \
+	debugger.c \
 	dict.c \
 	diff.c \
 	digraph.c \
@@ -1693,6 +1694,7 @@
 	objects/blowfish.o \
 	objects/crypt.o \
 	objects/crypt_zip.o \
+	objects/debugger.o \
 	objects/dict.o \
 	objects/diff.o \
 	objects/digraph.o \
@@ -1820,6 +1822,7 @@
 	charset.pro \
 	crypt.pro \
 	crypt_zip.pro \
+	debugger.pro \
 	dict.pro \
 	diff.pro \
 	digraph.pro \
@@ -2963,6 +2966,9 @@
 objects/crypt_zip.o: crypt_zip.c
 	$(CCC) -o $@ crypt_zip.c
 
+objects/debugger.o: debugger.c
+	$(CCC) -o $@ debugger.c
+
 objects/dict.o: dict.c
 	$(CCC) -o $@ dict.c
 
@@ -3425,6 +3431,9 @@
  os_unix.h auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
  proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
  proto.h globals.h
+objects/debugger.o: debugger.c vim.h protodef.h auto/config.h feature.h os_unix.h \
+  os_mac.h ascii.h keymap.h term.h macros.h option.h beval.h structs.h \
+  regexp.h gui.h alloc.h ex_cmds.h spell.h proto.h globals.h
 objects/dict.o: dict.c vim.h protodef.h auto/config.h feature.h os_unix.h \
  auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
  proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \