Fix OrderedHash.select to return self instance.

On ruby 2.1.1 the behavior of .select and .reject has changed.
They will return a Hash new instance, so we need to override them to
keep the instance object class.
Merge pull request #14244 from arthurnn/orderd_hash_select_fix

Fix OrderedHash.select to return self instance.