Setup user permissions for WordPress roles.

The "sf_open_thread", "sf_close_thread", "sf_reopen_thread", and "sf_comment_on_thread" capabilities have been added to SupportFlow. These capabilities have been mapped to WordPress' standard User Roles. The role/capability mapping is as follows:

* administrator: sf_open_thread, sf_close_thread, sf_reopen_thread, sf_comment_on_thread
* editor: sf_open_thread, sf_close_thread, sf_reopen_thread, sf_comment_on_thread
* author: sf_open_thread, sf_close_thread, sf_comment_on_thread
* contributor: sf_comment_on_thread

It should also be noted that the Super Admin will be given all of these permissions, but may need to be added differently.
Merge branch 'user-capabilities'
Manage Threads: Quick Action for viewing a thread should be "View" instead of "Discussion". Props @tollmanz

Closes #76
Check that get_role returns an appropriate value.

If the role has been removed and get_role returns null, the current code would fatal. Check that get_role doesn't return null then go to work on the role.
i18n fix
Use the "supportflow_after_setup_actions" action to initiate actions.

In order to bring the SupportFlow_Permissions class in line with the rest of the Support Flow code, use the "supportflow_after_setup_actions" to initiate actions.
Moar i18n fixes
Updated custom capabilities to better align with WordPress standards.

In the initial capabilities work, the "others" capabilities were completely ignored. In order to properly determine who has access to what, these "others" capabilities need to be considered. The following 4 capabilities were added:

* sf_close_others_threads
* sf_open_others_threads
* sf_reopen_others_threads
* sf_comment_on_others_threads

These 4 capabilities were added to the administrator and editor roles (and super admins also get these capabilities without any code changes).

This commit also changed previous capabilities to make them plural (e.g., sf_open_thread was changed to sf_open_threads) to better align with WordPress conventions.

See #55.
Added Date Opened, and Last Activity details to the Details sidebar widget on view Discussion page. Added styling to reveal the widget handle as well
Create Thread: New threads must have subjects

See #52
Merge pull request #79 from innerbot/upstream

Added Date Opened, and Last Activity details to the Details sidebar widg...
Fix error "Undefined variable"

See #79
Spacing fix
Manage Threads: Apply the most recent public comment as the excerpt for mode=excerpt

Closes #26
Make permissions class more efficient and maintainable.

Instead of declaring a property for each capability, I have added all of them to a single array. Additionally, another property has been added for mapping roles to capabilities. This makes updating the roles and capabilities much simpler than in previous commits.
Added shortcut function for getting a capability name.

Instead of requiring the user to type execessively to get the internal name of a SF capability, a simple get method is provided.
Manage Threads: The count for 'All' shouldn't include the closed status

See #61
Merge pull request #78 from SupportFlow/user-capabilities

User capabilities updates
Permissions: We don't need this named function for now

See #78
Permissions: Filters should just be named explicitly