Refactor select_related to support Django semantics and deep caching.
Merge pull request #192 from spectras/feature/deep_select_related

Refactor select_related to support Django semantics and deep caching.
Fixes #189 as a side effect.
Add translated field descriptors for field's attname in addition to their name.
This is required to be able to assign field attributes directly, for instance accessing instance.related_id where instance.related is a foreign key.
Merge pull request #193 from spectras/fix/translatable_foreign_key

Add translated field descriptors for Translatable ForeignKey's attname (foo_id).
Add attname of fields that define a custom one to Model._shared_field_names and Model._translated_field_names
Normalize test use of data and fixtures.
- Clean up test project models.
- Rebuild fixture data declarations to use named tuples for clarity.
- Simplify declaration and inclusion of fixtures in test cases.
- Update the whole 215 tests so they use fixture names and not the values.
Clean up admin tests.
- Use fixtures instead of manual creation.
- Fix miscellaneous assumptions that may break on other DB engines.
Merge pull request #194 from spectras/fix/postgresql_tests

Rework the handling of fixtures in tests, makint it possible to fix PostgreSQL support.
Implement TranslationQueryset.fallbacks for Django 1.6+.