reimplementing Rating and Thing with stuff i learned recently.
add ability to delete rating, which doesn't destroy.