Start of guide favoriting

This adds a menu item to guide view to favorite and unfavorite a guide.
Still needs some UI polish and the default state needs to be consistent
with the server.
Set initial guide favorite state
Add favorite icons
Guide favorite: Lots of UI polish

1. Updated icons for (un)favorite states
1. Toasts to convey what action is being performed
1. Disable icon to avoid multiple requests at the same time
Guide: Use m prefix for favorite member variable

Don't know how I made that mistake...
Disable favorite button if guide isn't loaded

Otherwise the app crashes if trying to favorite the guide.
Handle logged out favoriting more elegantly

Now the toast is only displayed when the API call is performed e.g.
after the user has authenticated. Also, the menu item is enabled if
login is cancelled.
Fix favoriting guide during reload

1. Reload guide
1. Favorite guide before the guide is retrieved
1. Crash

Invalidating the menu fixes it because it disables the menu if
`mGuide == null`. I also added a guard around `mGuide.isFavorited()`
just in case.
Fix favoriting then reloading the guide

1. Favorite a guide
1. Reload the guide
1. Favorite API call returns
1. Crash.
1. Guide API call returns

Guarding the `mGuide.setFavorited(favorited)` call fixes it.
Merge guide-favoriting (#183) into master

Guide Favoriting!

This adds a menu item to guide view so users can favorite (and
unfavorite) guides.