add cas support with a few tests
allow disabling of local logins.  In the instance where an .edu is using cas they may not want a user to be able to log in once the users credentials have been revoked in the system that feeds the CAS authentication server.  This is very optional
Use relative URLs, not absolute.

This helps if somebody would fork a GitHub repository, as the links
now lead to files in fork, not files in original repository. Also, it
makes more sense when reading Markdown files locally.
simplify, clarify TextSentinel

codeclimate pointed this out. I agree it is better
to simplify and reveal intentions.
small refactor of RateLimiter for clarity
extract TopicNotifier class from topic
minor refactorings
Make pry a bit more useful
Extract Topic#posters_summary
Remove unused parameters from posters_summary
Add hint on how to rebake posts
Merge pull request #900 from Supermathie/sysadmin-docs

Updated documentation
Version bump to v0.9.1
Revert "update active model serializers to latest". This introduced a regression to the SiteCustomizations part of the admin section.

This reverts commit d4360798013e754e770f136eade711ae5de93fd1.
FIX: User stream was loading the same page over and over once you scrolled past 60
items.
Sliding window rate limiting

Switched the algorithm to use a circular buffer
based on a redis list
Add Post#is_first_post?

We should be able to ask a post if it's the first in a topic
Add Topic#max_post_number to find max post number
Add Topic#url for determining url for a Topic
Add test to verify posts are moved in transaction