use libxml
update choice to only version certain attribute
update vote create options to include objects

instead of ids, include the actual objects that we already have on hand.
this prevents a lookup in the database
simplify safely associate appearance
update Choice.update_score! to use manual query