refactor the naming within plugin new generator

Having a method called `full?`, which checks on :full and :mountable
is very confusing. I renamed `full?` to `engine?` and created a `full?`
method that only checks the `:full` option
`assert_template` fails with empty string when a template has been rendered

For instance, it prevents false positive in this case:

    file = nil
    get :index
    assert_template("#{file}")
`assert_template` fails with empty string.
document :hidden_field_id option for fields_for
Merge pull request #8306 from senny/documentation_for_hidden_field_id

Document :hidden_field_id option for fields_for [ci skip]
Updated link to RubyGems site
Update version numbers of Ruby and Rails
Modified "Allowing the update of fields" section

* Rails generate model Post ______ creates the
  attr_accessible line for you for any fields
  you specify. Changed the section to describe
  what this line in the model does.
Changed the Using Partials section to read a little better

* No need to give a simple example, as we have a
  partial that we create in the blog app
Added new line to make it more readable

* This shows the reader there is a method: and 
  data: parameters
Moved position of has_many
Updated with where functional/helper tests go
We should use post_path, not post_url
Reword Post model to note there are lines not shown
Don't call will_change! for datetime nil->"".

Setting a nil datetime attribute to a blank string should not cause the
attribute to be dirty.

Fix #8310
cleanup, remove broken whitespace
cleanup, removed dispensable `require` statements from `ActiveModel`
Revert "Updated with where functional/helper tests go"

This reverts commit c94cfdad6388dcdfaf4c10b9e8cee46baf2a7901.

* This is the new 4.0 (master) directory structure
Merge pull request #8311 from alisdair/dirty-nullable-datetime

Don't call will_change! for datetime nil->"".
Merge pull request #8302 from roberto/assert_template_empty_string

assert_template("") will now fail no matter whether a template has been rendered or not.