cache_key consults updated_on timestamp if present

- Extract max timestamp retrieval for cache_key
- Update changelog for cache_key changes
change log4r link to most recent, updated location
fix broken links to README docs in intro
Support creating a table migration generator

Sometimes you want to create a table without an associated model and
test, which is also not a join table. With this commit, you can now
do that.

Example:

    rails g migration create_posts title:string
or
    rails g migration CreatePosts title:string

This commit also moves the template the model generator uses for the
migration to the migration templates folder, as it seems a more
sensible place for it now that it is shared code.
Merge pull request #8652 from codeodor/create_table_migration

Support creating a table migration generator

Sometimes you want to create a table without an associated model and
test, which is also not a join table. With this commit, you can now
do that.

Example:

    rails g migration create_posts title:string
or
    rails g migration CreatePosts title:string

This commit also moves the template the model generator uses for the
migration to the migration templates folder, as it seems a more
sensible place for it now that it is shared code.
Allow use of assert_template with the :file option.
This worked in Rails 3.2, but was a regression in 4.0.0.beta1
don't use non-ascii ' chars in documentation
Clarified need to remove existing code in welcome index.

Signed-off-by: Chelsea Macaluso <c.macaluso@modcloth.com>
Clarified removal of public/index.html file

Signed-off-by: Trent Michaels <t.michaels@modcloth.com>
Fix PostgreSQL TIMESTAMP WITH TIME ZONE to return ActiveSupport::Time

In an AR model a timestamptz attribute would return a ruby string and AR
tests did not check for any type casting.  Previous tests would pass
only because an assert_equal was being used on a Time.utc object, which
will parse the right side of the eq to a valid Time instance for
comparision.

switch to test instance of Time instead of ActiveSupport::TimeWithZone
Fixed grammatical error and simplified paragraph concerning controllers.

Signed-off-by: Chelsea Macaluso <c.macaluso@modcloth.com>
New beauty pages(404, 422, 500)

moving changelog note to unreleased section

New beauty pages(404, 422, 500)
Restore note about nested SCRIPT_NAME handling.
Reverting commit regarding public/index.html (no longer in Rails 4.)

This reverts commit f8461f73c77c186ad0aa735fe9877990bffe1990.
deal with `#append` and `#prepend` on association collections.

Closes #7364.

Collection associations behave similar to Arrays. However there is no
way to prepend records. And to append one should use `<<`. Before this
patch `#append` and `#prepend` did not add the record to the loaded
association.

`#append` now behaves like `<<` and `#prepend` is not defined.
Merge pull request #9510 from senny/7364_warn_when_appending_prepending_to_an_association

deal with `#append` and `#prepend` on association collections
Add explanation of :dependent => :restrict

Based on information here: http://api.rubyonrails.org/classes/ActiveRecord/Associations/ClassMethods.html#method-i-has_many
:scissors: extra blank line
Merge pull request #9431 from troyk/patch-2

Fix PostgreSQL TIMESTAMP WITH TIME ZONE to return ActiveSupport::Time
Remove hard coded references to Active Record in railties