Replace exception used for flow control with idiomatic throw/catch.
Refactored conditional to an || to be more idiomatic.
Refactor select().map() to use pluck.
Remove a method already provided by ActiveRecord.
Various idiomatic User refactorings.
DRY up the user model slightly

regular? is just the inverse of staff?
Clean up update_visit_record!

update_visit_record! appears to add user_visit record if one
doesn't exist and days_visited is simply a counter for the number
of visit records.
Added a spec for staff? and regular?
Set created_at manually through PostCreator
Show posts for last page when page out of range
Fix spelling mistake in spec doc
Merge pull request #860 from chrishunt/chrishunt/page-out-of-range

Show posts for last page when page out of range
Merge pull request #861 from sanderdatema/post_creator

Set created_at manually through PostCreator
Merge pull request #859 from lengarvey/user_refactoring

Light refactoring of the User model
get rid of nonsense 404.html
correct 404 handling for invalid pages
I fixed the multithreading issue with connection management a while back, remove mutex, it only slows down job processing
the private message stream is different to normal streams, improving the ui a bit and collapsing conversations
proper 404 for json request 404
don't error out on not posts if its a json request
Replaced `Em.run.next` with the more proper `Em.run.schedule('afterRender')`
when we are waiting for rendering to finish.
Replaced {{view Discourse.TextField}} with {{textfield}} helper.