Fixes #63: fix_counts does not work when using primary_key

Both primary_key possibilities need to be taken into account:
 - on the table that holds the counter
 - on the table of counted records
I think this looks wrong. Rather than using `klass.primary_key`, shouldn't this be `relation_klass(cur_relation).primary_key`? I believe that your test doesn't catch this because there is no example of a multi-level counter-cache with custom primary keys. Does that sound right? If so, perhaps you could add such a test.