Link to user from post on topic page

Simply turns the name into a link.
Merge pull request #27 from taylorkearns/link-to-user

Link to user from post on topic page
[WIP] Start splitting apart thredded_topics

* Create a thredded_private_topics table
* Change Thredded::PrivateTopic to subclass from AR::Base instead
* Start filling in the blanks on the dependencies - posts, decorators, etc
* Add associations, copy over code from Thredded::Topic to
  Thredded::PrivateTopic
[JRO] Fix more specs
[JRO] Create new table and copy data over
[JRO] Tests passing

TODO: Use polymorphic association instead of having two id's in posts
[JRO] Use polymorphic association w/topics in posts

Up until now we were using STI (single table inheritance) to reference topics and private topics. This commit moves us closer to a better designed API with topics and private_topics being their own, discrete models, and posts referencing either with a polymorphic reference called “postable”.

* Migrate data from one table, to two tables.
* Create a private_topic_mailer and views.
* Update rake and rspec-core
[JRO] Move posts#index to topics#show

TODO: Move similar to private_topics
[JRO] Migrate post data and check functionality

Lots of places where topic was specifically referenced needed to be
changed to either postable, or using the polymorphic helpers.

Add new exception that can be thrown - PrivateTopicNotFound
Fix this logic
[JRO] Search back to working
[JRO] Failing private topic integration specs
[JRO] Removing specs for deprecated feature
[JRO] Big refactor of decorator code.

Blew up, and out, a large hunk of the decorator code so that
topics and private topics were sufficiently isolated with regard to the decorator responsibilities. This turned into a domino effect where changes 

* Extract common decorator code into a base topic
  decorator and compose the vanilla and private topic
  decorators using that base decorator
* More proper use of the SimpleDelegator class
* Pull up the Chronic timezone change to the spec
  helper instead of before every test using Chronic.
[JRO] Use PG instead of SQLite

* Use database_cleaner
* Tune the database_cleaner stuff in spec_helper
[JRO] Mark and reset a user's read status

For private messages a user needs to know whether there's a new post in
there or not. This commit does that.

Also:

* Add command/service objects to do some work
* Decorators should behave like private topic and allow rails to do its
  work via content_tag
* Get some test coverage around this new feature