[SCHEMA] Add global unique `public_id` to database objects

Summary:
`public_id` is a binary column that is stored as a 128 bit unsigned integer, generated from Python's UUID module.

Although the field is stored as binary, the value on our model objects is exposed as a base-36 string (letters and numbers only). These should always be autogenerated, with the exception of the included migration.

Currently these objects have public_ids. (We can add others later if needed.)

- Account
- Block
- Contact
- Message
- Namespace
- SharedFolder
- Thread
- User
- UserSession

Test Plan: Run migration, it might take a while

Reviewers: spang, emfree

CC: kav-ya

Differential Revision: https://review.inboxapp.com/D125