Retire takeaway

This branch builds upon changes from the remove_placements branch.  It should not be merged until that one is complete.  It is here for discussion.
Had issues here and reverted to using the exist_in_database helper.  See comments on above lines.