flatter (rubygems): Flatter transforms a deeply nested graph of ActiveModel-like objects     to a single mapper object that handles all the nested attributes and has a very flexible behavior     for handling validation, saving routines with a DRY approach.
Keywords: activemodel|activerecord|mapper