AddressContext lets address-action providers branch on whether the
site is code/function/data; the tracer offers a function vs
instruction hook accordingly. ThreadActionProvider mirrors the
pattern for thread targets so UI code stays oblivious to which
instrument owns a given action.