The following snippet of code will make the primary key in a Django model to
be a hexadecimal string of 8 characters instead of an integer.
I wrote this earlier today, and it works fine, but I have a bad feeling about
it. I don't know why yet, but something doesn't feel right. Nevertheless, I am
putting it here as a note to myself. You should probably not use it. If you do,
note that if you exhaust the possible IDs, generate_id() will recurse