first pass at sortable has-many