Improvements to habtm saving, some work on 'through' association support