fix HABTM w/out primary key errors on destruction
Make sure transaction state resets after commit

[fixes #12566]
`#to_param` returns `nil` if `to_key` returns `nil`. Closes #11399.

The documentation of `#to_key` (http://api.rubyonrails.org/classes/ActiveModel/Conversion.html#method-i-to_key)
states that it returns `nil` if there are no key attributes. `to_param` needs
to be aware of that fact and return `nil` as well.

Previously it raised the following exception:

```
  1) Error:
ConversionTest#test_to_param_returns_nil_if_to_key_is_nil:
NoMethodError: undefined method `join' for nil:NilClass
    /Users/senny/Projects/rails/activemodel/lib/active_model/conversion.rb:65:in `to_param'
    /Users/senny/Projects/rails/activemodel/test/cases/conversion_test.rb:34:in `block in <class:ConversionTest>'
```
Merge pull request #13899 from Fortisque/kevin/active_record_HABTM_with_belongs_to

destruction errors out on HABTM w/out primary key
docs, link MySQL manual for multi column indexes. [ci ckip].

Closes #9131.
add missing sharp [ci skip]
Merge pull request #13940 from gregmolnar/guides

add missing sharp [ci skip]
Merge pull request #13935 from arthurnn/fix_12566

Make sure transaction state resets after commit
Add CHANGELOG entry for #13935 [ci skip]
[ci skip] Add missing 'task' to note on Running Migrations
Merge pull request #13943 from loganhasson/master

[ci skip] Add missing 'task' to note on Running Migrations
Document that enum conditions must use the ordinal value

[ci skip]
docs, AR already auto-detects primary keys. Closes #13946. [ci skip]

This behavior was introduced since Rails 3.1 (207f266ccaaa9cd04cd2a7513ae5598c4358b510)
but the docs were still out of date.
Fixed typo in column_definition_test.rb.
Merge pull request #13949 from vajrasky/fix_typo_column_definition_test

Fixed typos in column_definition_test.rb.
Fixed typos [ci skip]
Merge pull request #13950 from calvintam/fix_typos

Fixed typos
Removed unused commented code [ci skip]

As discussed in #13940 this can be removed
We can document this somewhere else in testing guides.
remove gemnasium batch from README. [ci skip]

The rails/rails gemnasium page (https://gemnasium.com/rails/rails) is not helping much.
It lists 0 dependencies so there is not much to track. Also our gems mostly depend
on other gems we control. There is not much point in monitoring them.

The batch was introduced with #3909.
Remove obsolete line (was needed for Ruby 1.8.7 support)