Fix inefficiency in findField(), fixes #1392

findField() was performing an efficient css search when $selector passed in as an array (e.g. ['css' => 'div.color']), but not as a string (e.g. 'div.color', '#my-id'). Fix allows efficiency when passing a string identifier by not assuming that all strings require xpath to find the element.
you should use `matchORFail` for array or WebDriverBy here, because....