Store companies in `participants`; #449

Rather than having a separate `companies` table, we can just the
participants table for both companies and people. That's why it's named
participants in the first place, instead of users or humans or some
such.
Back out ill-advised changes to Participant; #449

We're going to greatly simplify the schema changes for this feature. I
had started modifying set_tip_to for the more complicated schema, and it
made the test suite reeeeeaaallly borked. Backing this out fixes the
test suite and I'll commit the new schema changes next.
Greatly simplify schema for #449

I had originally thought we would have new tables for `companies` and
`brands` but we're going to use the existing `participants` table.
Instead, this adds a `type` column to `participants` which is an ENUM
with three values: individual, group, and open group. Individuals will
behave as participants currently do. Groups will say "We are" instead of
"I am" but will otherwise be the same. Open groups will be where we go
into all of the voting to decide how to split up the money.