Account management updates

Here's the work for getting a more robust account management model into the Mobile SDK.  I'll annotate on specific items, but at a high level:

- `SFAccountManager` goes away, to be replaced by `SFUserAccountManager` and `SFUserAccount`.  Some of SFAccountManager's previous functionality also moves into `SFAuthenticationManager`.

- `SFAuthenticationManagerDelegate` gets some added methods around logout and host switching, and all `AppDelegate` classes from various sample and template apps will now consume these events through the delegate model.

- The underpinnings have been laid for multi-user support (see `SFDirectoryManager`).

- The foundations have been laid for better Communities support (see. `SFCommunityData`).

- Miscellaneous unit test cleanup and consolidation, build updates, etc.