Associate a userid with each Activity

This will be used to determine whether or not the current user has
permission to view the Activity. For example: Userid 1234 views
`Activity A`, navigates to `Activity B`, logs out, Userid 5678 logs in,
navigates back to `Activity B` and views the previous user's content.
Finish Activities if userids don't match

This is so User A can't view data viewed by User B.
Fix GuideCreateActivity finishing on logout
Fix Logout events getting stuck in DeadEvents

Now we don't post Logout APIEvents to the Bus because a) we don't care
about the response which means that b) we don't listen for it.
Previously they were being posted and would get stuck in APIService's
list of DeadEvents because the Activity that it is associated with is
dead since they just logged out.
Merge branch 'logged-out-retrying-dead-event-fixes'