Fix query with nested array in Active Record

`User.where(id: [[1,2],3])` was equal to `User.where(id:[1, 2, 3])`
in Rails 4.1.x but because of some refactoring in Arel this stopped
working in 4.2.0. This fixes it in Rails.

[Dan Olson & Cristian Bica]
Convert string concatenations to substitutions
Prefer "if any?" to "unless empty?"

* Consistent whitespace
* Remove unnecessary parentheses
Fix warnings for undefined local variable

* Add private method primary_key_for, which more clearly shows that the
expected return value is nil when a primary key is not found.
Merge pull request #16830 from teeparham/schema_dumper

Cleanup SchemaDumper
Schema dumper: all connection adapters implement #primary_key, so rely on it exclusively
Removing unused fake models
Merge pull request #16834 from tchandy/removing_unused_fake_models

Removing unused fake models
Merge pull request #16825 from cristianbica/fix-ar-nested-arrays

Fix query with nested array in Active Record
Add support for multiple preview_path