Add TextMenu for creating / rendering text-based menus

Updated JSITargetMenu to use the new method.  Hopefully, it's easier to modify.  There are a couple of little things that need to be resolved, but I believe I have functional parity with the previous implementation.