auto link hm:t fixture join tables like habtm
make the duplicate code more similar
reduce duplication somewhat
use polymorphic proxies to remove duplicate code