Added new field for User - a name. 

* Added new field for user - a name. 
* Refactored registering so the user has to input the name (beginning with a capital letter). 
* Moved the initials of the author to user. Also added a method called author to Question so we don't have to change all the views which display author (I'm displaying user.name as author now). 
* Edited forms so the Author cannot be input now. And most of all refactored tests (added test for User which now checks most of validations on author which was tested in Question before).
If you're using nested resources, it's best to load "parent" resource in a `before_action`.

But, for this one, let's go for something bigger :)

`app/controllers/questions_controller.rb`
```` ruby
  def show
    @answers = @question.answers.all
    @answer  = @question.answers.new
  end
````

`app/controllers/answers_controller.rb`
```` ruby
class AnswersController < ApplicationController
  before_action :set_question

  def create
    @answer = current_user.answers.new(answer_params) do |answer|
      answer.question = @question
    end

    if @answer.save
      redirect_to @question
    else
      @answers = @question.answers

      render 'questions/show'
    end
  end

  def destroy
    @answer = @question.answers.find(params[:id])

    @answer.destroy

    redirect_to @question
  end

  private

  def set_question
    @question = Question.find(params[:question_id])
  end

  def answer_params
    params.require(:answer).permit(:body)
  end

end
````

`app/views/questions/show.html.slim`
```` ruby
...
h2 Add Answer

= render 'answers/form'

h2 Answers

table
  tr
    th
    th Body
    th Author
    th colspan=3
  = render @answers
````

`app/views/answers/_answer.html.slim`
```` ruby
tr
  td = answer_counter + 1
  td = answer.body
  td = answer.author
  - if user_signed_in? && (answer.user == current_user)
    td = link_to 'Delete', question_answer_path(answer.question, answer), method: :delete, data: {confirm: 'Are you sure?'}
  - else
    td
````

`app/views/answers/_form.html.slim`
```` ruby
= form_for [@question, @answer] do |form|
  - if @answer.errors.any?
    .alert-box.alert
      p : strong Please fix #{pluralize(@question.errors.count, 'error')}:
      ul
        - @answer.errors.full_messages.each do |message|
          li = message

  .row
    .large-12.columns
      .row.collapse
        .small-10.columns = form.text_field :body
        .small-2.columns = form.submit class: 'button postfix'
````

`config/routes.rb`
```` ruby
  resources :questions do
    resources :answers
  end
````

`app/models/user.rb`
```` ruby
class User < ActiveRecord::Base
  has_many :questions
  has_many :answers
  ...
end
````

Also, we can delete `app/views/answers/index.html.slim`, as we show all answers in a question#show view.

This way, we have fully working Answers CRD (CRUD without *U* part ;)), as a nested resource.