Populate history command

Replaces #60

Both the command itself and tests need work. I did not address timestamps yet.

Once coverage is good the queries need optimization.
Maybe we should verify that `models.Restaurant.updates.all().count()` is 0 after this as a sanity check?