Fixes Issue #13466.

Changed the call to a scope block to be evaluated with instance_eval.
The result is that ScopeRegistry can use the actual class instead of base_class when
caching scopes so queries made by classes with a common ancestor won't leak scopes.
Merge pull request #14544 from jefflai2/named_scope_sti

Fixes Issue #13466.

Conflicts:
	activerecord/CHANGELOG.md