Reduce two conditionals to one in associations code
Handle more corner cases in the many_to_one_pk_lookup plugin

This handles all known corner cases in the many_to_one_pk_lookup
plugin.  It should be safe to enable this by default in all
apps without breaking things.  It has substantial performance
advantages even when one of the caching plugins is not used,
because of the opimitized SQL generation for model primary key
lookups.