Let the db find us a random entry; it's faster.

Every time we send someone a daily email, we're [loading all their entries](https://github.com/codecation/trailmix/blob/443b102136ae379c0e23ce0bb25894374f758dec/app/models/user.rb#L31) into memory in order to select one at random. For some users who have a couple thousand entries already, this is not ideal. :grin: 

PostgreSQL to the rescue! See this very detailed and scientific benchmark (on staging):

```ruby
> def time
>   start = Time.current
>
>   yield
>
>   puts "#{(Time.current - start).round(3)} seconds"
> end

> user.entries.count
=> 1482

> time { user.entries.sample }
0.128 seconds

> time { user.entries.order("RANDOM()").first }
0.007 seconds
```



Yeah, I'm not sure how to test a method like this. I think it's worth keeping this test because it verifies some behavior (we call it and get an entry back), but agreed it's a little fishy.