Added image URL attribute and validation to Post model.

First step along commit arc for Section 12.

RSpec: 107 examples, 0 failures
Script: 0 tests: 0 failures, 0 errors, 0 pending, 0 omitted
RuboCop: 35 files inspected, no offenses detected
RuboCop global overrides in `.rubocop.yml`: 2
RuboCop local overrides in our source/spec files: 5
Added support for image URL to PermissivePostCreator interactor.

RSpec: 109 examples, 0 failures
Script: 0 tests: 0 failures, 0 errors, 0 pending, 0 omitted
RuboCop: 35 files inspected, no offenses detected
RuboCop global overrides in `.rubocop.yml`: 2
RuboCop local overrides in our source/spec files: 5
Added decorators and interactors to Rails autoload path.

RSpec: 109 examples, 0 failures
Script: 0 tests: 0 failures, 0 errors, 0 pending, 0 omitted
RuboCop: 35 files inspected, no offenses detected
RuboCop global overrides in `.rubocop.yml`: 2
RuboCop local overrides in our source/spec files: 5
Support code for imminent PostDecorator#build_body method.

Command-pattern classes to build body markup for either "image posts" or
"text posts" per Section 12 of the book.

Note that the TextBodyBuilder will produce a 'figure' tag containing an
empty (rather than omitted), which in The Real World™ may not be what we
really want.

RSpec: 119 examples, 0 failures
Script: 0 tests: 0 failures, 0 errors, 0 pending, 0 omitted
RuboCop: 41 files inspected, no offenses detected
RuboCop global overrides in `.rubocop.yml`: 2
RuboCop local overrides in our source/spec files: 5
Added new PostDecorator class with #build_body method.

Roughly paralleling Avdi's section on his "Exhibit Pattern", we've now
finished the basic plumbing; next up is to update the relevant views and
feature specs.

RSpec: 124 examples, 0 failures
Script: 0 tests: 0 failures, 0 errors, 0 pending, 0 omitted
RuboCop: 43 files inspected, no offenses detected
RuboCop global overrides in `.rubocop.yml`: 2
RuboCop local overrides in our source/spec files: 5