Added global style controls for iOS 7
Integrated social feature work by Ryan Waggoner.

I tried merging in from https://github.com/ryanwaggoner/INaturalistIOS
but there were insane conflicts with the storyboard and the data
model, so I used checkout on the ObjC source files and tried to
replicate the rest. As far as I can tell this mostly works in the way
Ryan left it.
Numerous bugfixes
* prevent deletion of unsynced local records on sync
* adjusted method of setting syncedAt: now all records that are downloaded
  with recordID set will be considered synced until they are changed locally.
  This involved removing the default zero value for all foreign keys. Not sure
  what the point of that was anyway
* logging out and logging back in as a new user should always work. Old oauth
  credentials were getting stored and not cleared on sign out
* added sort col to observation to ensure obs are sorted by creation date,
  with locally created obs at the top
* numerous minor UI tweaks for iOS 7
* coverflows now load remote images with normal dimensions and reflections
* obs list only automatically refreshes if it hasn't done so in the last hour and network is available
* obs list doesn't complain if you try to sync w/o network
Made sure changes to license code doesn't trigger change to localUpdatedAt.
More fixes
* check for network before loading new obs activity
* changed way localUpdatedAt and syncedAt get set for records: now
  it's up to the controller
* delete obs get deleted on server on next sync
* obs fields and proj obs get pulled down on obs refresh
* other stuff
Minor guide fixes.
Some iPad visual bugfixes.
Added group to Project, minor ui stuff.
Fixed guide menu icon visibility, map add obs button.
Fixed a number of bugs:
* Act count is negative when obs has taxon but not synced
* Desc doesn't save when swiping obs
* Need bigger default image for obs edit on ipad
* Swipe ordering is not the same as list order
* Activity ids not showing common name
* Ident remarks could be taller
Bugfix: inf loop during refresh with unsynced obs field values

Overriding the core data accessors is risky business, but we do it for
associates to try and maintain foreign key integrity. What we were not
doing was checking to see if the associate was there before accessing
its key and assigning it to a foreign key attribute, which resulted in
an attempt to assign a nil value to a foreign key attribute, which
Restkit's caching layer was unhappy with and resulted in some infinite
looping.
Fixed problems with obs sorting, swiping, and remote image loading.
Added new features dialog for upgraders.
Numerous updates
* activity notifications tappable on obs list
* do something sane when trying to show remote images w/o internet
* taxa in activity list clickable
* taxa on obs detail clickable
* hide activity notif on obs detail for new record
Bugfixes: extra lines in taxa search results, obs detail crash when viewing obs fields after returning to obs form.
Ignore downloaded obs that have been deleted on the client, translations.
ProjectChooser now loads your projects if necessary.
Removed delete all option, ability to agree with self.
Bugfix: obs fields weren't loading when choosing proj from proj tab.
Tried to prevent unecessary timeout errors on obs list refresh.