Update examples and docs to demonstrate using __lldb_init_module instead of
the idiom that checks for lldb.debugger at the top-level.
if __name__ == '__main__': ... elif lldb.debugger: ...
Is replaced with:
if __name__ == '__main__': ... def __lldb_init_module(debugger, internal_dict): ...
This change is for two reasons. First, it's generally encouraged to only
use the convenience singletons (lldb.{debugger,process,target,etc})
interactively, from the script command. Second, there's a bug where
registering a python class as a command (using command script add -c ...),
result in the command not being runnable. Note that registering function-backed
commands does not have this bug.
We need to initialize the debugger first before doing anything or no plug-ins will be available: