core context code: add support for a global processing context

The newly introduced CONTEXT_GLOBAL represents the current flow of
script execution. It is a more uniform way of handling the majority
of async script usage scenarios.

The initial direction (by simply using CONTEXT_MSG) runs into too many
problems:

    * portions of code where the "current sip_msg" is unavailable
    * concurrency issues (insufficient referencing) due to sip_msg cloning
      logic in tm, which also clones the context, but fails to properly
      count possible additional dialog references

CONTEXT_MSG logic will be removed in a future commit.