select_related() implementation

This pull request lets `select_related` work properly with translatable models. Includes test cases. In many cases, this can significantly reduce the number of database queries required for a given django app's view.

Limitations are:

* You must specify a list of columns (relations) to follow
* Only immediately related translated models will be included (i.e. will only follow relations one level deep if the first relation is to a translated model)
* I haven't implemented select_related from a standard model to a translated model; only from translated to translated.
* Models which are translated but which have relations to translated models that aren't translated into the current language will not get returned. I'm not sure of the best way to handle this. (e.g. if a Related object is translated into both English and Japanese, but it has a relation to a Normal object that is only translated into English, then Related.language('ja').select_related('normal') will not return the Related object at all).