Add test and fix for hasMany selfAssociation with through option