Always use table and primary key to specify conditions

Hey there,

I'm using the `*_conditions` methods to construct queries for another model.  `#subtree_conditions` is the only method that works fine because it uses `#{table_name}.#{primary_key}`. This is a single commit to fix the other methods.

I could not run your tests because of `uninitialized constant Test::Unit::AutoRunner::Priority (NameError)`. I was too lazy to look into it, but I don't think that I broke anything ;-)