Separated out `PostTextSupport` module from `Post` class.

This adds a `body` attribute to the `Post` class (which no longer has one) such that, once it's been loaded and the new #setup_text_support method called, a Post works just like it did before, when it knew it had a body.

Why bother? Because, as we go along in the next subsection of the book (see http://objectsonrails.com/#sec-12_1), we'll add a new `PostImageSupport` module that will allow a `Post` to a) do everything the `Post` class in the book does, while b) not being *quite* so egregious an SRP violation.

To put it more broadly, we've retrofit the Post class so that we can dynamically load conditional logic *without* resorting to subclasses (see Issue #5).

But there's still a lot of ceremony with instantiating a Post and getting it set up as a TextPost — which has been hidden within the `Blog#new_post` method (at the cost of an additional parameter). So long as you call `Blog#new_post` to get a new "Post", everything basically still works. Next up, as we said earlier: image posts.

RSpec: 101 examples, 0 failures
Script: 0 tests: 0 failures, 0 errors, 0 pending, 0 omitted
RuboCop: 36 files inspected, no offenses detected
RuboCop global overrides in `.rubocop.yml`: 4
RuboCop local overrides in source and own specs: 1
Source lines not covered by specs: 1