Changes

I will leave comments in the Diff in regards to other parts I just disagree with.
I use `and` and `or` all the time for explicit things where I do not want to work with `truthy` values getting returned, but only having a boolean be returned from the statement.

Example:

```ruby
if record = Article.count > 0 && Article.first
  # ...
end

if exists = @article.updated_at and @article.author
  # ...
end
```

Contrived example obviously.