BroadcastHelper rewritten to prevent leaks

Backstack really should mostly work now, still testing.