Eager load versions, owners and accounts

:fork_and_knife: 

https://trello.com/c/6Lb83mKx/241-cookbooks-api-index-breaks-if-a-cookbook-is-deleted-while-the-index-is-being-rendered

This is an alternate solution to https://github.com/opscode/supermarket/pull/532
It seems like this should be a named scope now. It's a bit long and would be easier to test if it was a scope:

```ruby
@cookbooks = Cookbook.index(start: @start, items: @items, order: @order)
```