Allow indexing dataframes by a binary vector with length nrow(df)

With this pull request, `df[df["age"] .< 30]` gets all rows where `age` is less than 30. 

The easiest other way I can see this right now to do this seems to be something like

```
df[df["age"] .< 40, 1:ncol(df)]
```

which seems a bit unnecessarily verbose to me. But of course if there's an easy way to do this that I've not noticed please disregard :)