Add a draft for indexes.

Some draft API specifications for custom indexes. Key points:

- Introduction of `django.db.models.indexes`
- Support for custom classes to `db_index`
- Introduction of `Meta.indexes`
- `spatial_index` would be deprecated and a corresponding chunk of code removed from gis, allowing fields to specify their own index type, via `Field.get_default_index`
I think `indexes`, and also `unique_together`, should be a set rather than a list; order has no meaning. And since we're no longer supporting Python 2.6, the syntax is even no longer bulkier -- just replace [] with {}.