Comprehensive, flexible denormalization for mongoid that stays in sync