Don't offer to join beyond maximum participants
This is patch checks to see how many participants are sharing an
activity. If the maximum has been reached, then the Join palette menu
item is not shown.

This patch depends on two patches to sugar-toolkit-gtk3 that enable
setting max_participants in activity.info and only impacts activities
where that field has been set.

Also, since we added caching of activity bundles in the toolkit, we
take advantage of that caching in view/viewhelp.py,
view/viewsource.py, and journal/misc.py to reduce file I/O.

Replaces #339