Add array_search to Support\Collection

Add the ability to perform array_search on Support\Collection.
Testing improvements
Cleaning up comment.
Improve Collection extensibility

Make the only `private` method `protected` so it can be used in other implementations.
Merge pull request #4477 from GrahamCampbell/4.2-testing

[4.2] Testing Improvements
Fix conflicts and merge.