Add support for finding node by multiple attributes

This adds a Rails-style `find_by` method that accepts a hash of 1 or more attribute/text pairs to match nodes against. A `find_by!` method was also added that raises a `Capybara::ElementNotFound` exception when no match is found.
:+1: 

Thoughts on something like:

```
require_selector! do
  new(Capybara.current_session.find(@selector))
end
```

Or without the block and just have it raise?