Fix the tests from the last stack-related commit

The previous change reports the bottom stack frame as subroutine
"main::MAIN" instead of "MAIN"
refactor to rename prompt() to idle()
refactor to rename stepin() to step()
Pass file and line to poll()
refactor to rename stopped() to notify_stopped()
call notify_resumed() just before giving control back to the user program
refactor to rename $i to $level
Avoid an uninitialized value warning
rename new() to _new()

The StackFrame constructor isn't meant to be called from the outside
Don't autovivify array elements if they ask for a fraem off the end of the list
Add method frames()
expose the evalfile and evalline attributes as methods
experimental: allow calling when not in the debugger
documentation for Devel::hdb::DB::Stack
Add method init() called before the first breakpoint

usually the first executable line in the program
refactor to rename notify_parent_child_was_forked() to notify_fork_parent()
refactor to rename notify_child_process_is_forked() to notify_fork_child()
remove commented-out code

it was the old action executer
provide stubs for notify_program_terminated, notify_program_exit and notify_uncaught_exception
Add function _do_each_client()

to call methods on each attached client