Refactored how auto-tree selection works.
Moved sending messages on a channel to the channel object.  Refactored a couple places when we append text to reduce duplicated code.
Fixed some crashing issues with the command parser refactor.  Re-worked things to pass in current channel context so we can make command shortcuts.
Add extra line break before image (Completes #20).  Add empty span channel and server constructor to prevent text viewer from removing assets when assigned an empty string (Completes #32)
Merge branch 'develop' into feature/technicallyerik-wip
Support twitter cards in addition to open graph (Closes #31)
Only auto-scroll if we're at the bottom of the scroll view (Completed #27)
Reverted extra line break before image.  I don't think there is a good way to do this.  (#20).  Fixed previous auto-scrolling fix for when switching channels and after images load (#27).  Fixed bug with uninitialized modes set on user.
Fixed flag processing to prevent crashing
Check that a server entry with the same name doesn't already exist.  We could probably key servers in the tree another way, but this works for now. (Completes #12)  Save the preferences in the user's directory to address some of the security concerns brought up in #30.  Keeping file format .ini for portability across platforms.
Channel names are clickable. Fixes #14