Communication fixup

This changes our intents to use the localbroadcastmanager while still allowing global broadcast intents to work. If you have the time please pull down my branch and compile and run. I am really worried about elusive bugs. That said I have tested this with a few devices and it seems to work.