Allow associations inline with contain specify their own finder methods

Sorry, pull #4413 was out of whack with the 3.0 base. This PR is up-to-date and a single squash of the changes needed for this.
Travis is complaining about allocating memory which is (should be) unrelated.

Refs issue #4408.

Thanks!
Yeah that's when `$k == 0`. That case is for when someone's sent the finder as:
`$query->contain(['Comments' => ['finder' => ['translations']]]);`
Which would produce: `$type='translations'; $options = [];`