refactor Topic

* move finding by username/email to User
* make SiteSetting return a range of possible post title lengths
* remove unnecessary conditions
Merge pull request #271 from goshakkk/topic-refactor

Refactor Topic