Inflector irregular singularize rules
Adding Back Rails::Engine::Railties#engines

Removing it breaks functionality with gems such as Thinking Sphinx.
This restores it with a deprecation warning. Closes #8551
Simplify code in AS json encoder
remove 'update' duplications
update assets guide code styling

* 1.9 hash syntax
* proper formatting around one line blocks
* do-end for multiline blocks
Clarified the minute option on DateTime#change
Update guides/source/active_record_basics.md
Fix .update_all and .delete_all when using a condition on a joined table
in a default_scope.

`Model.joins(...).where(condition_on_joined_table).update_all` /
`delete_all` worked, but the same operation implemented with a
default_scope generated a SQL error because ActiveRecord ignored the
join but implemented the where condition anyways.
Update engine application layout file path
Fix typo in guides/source/engines.md
Fix typo in guides/source/engines.md
Collection radio buttons and collection check boxes through FormBuilder render
the provided block.

In the case of having a form_for method being called, the block for each
collection would not be passed and thus the result expected was always the same.
This patch passes the block to the original method like it would be assumed.
`CollectionAssociation#empty?` respects newly builded records
Adding tests for ActiveModel::Model

* Verifying persisted? is false when Model initialized
* Passing nil to Model should not blow up
* Changing test name to the one suggested in pull request comment
Fix simple expression
Associaton -> Association
Remove WIP from Working With JavaScript Guide.

Now that we've fixed the fibs example, this is good to go.
Allow value to be set on date_select
Merge pull request #8925 from colinbm/date_select_value

Allow to override the value on date_select
Merge pull request #8917 from adomokos/adding_more_tests_to_activemodel_model

Adding tests for ActiveModel::Model