I don't think the asset model should have $REQUIRED_ROWS.  This is a business decision independent of how we model each asset.  We should add this as a parameter (e.g. getDefaultValuesBySection( $section, $num ) and let the $section specific controller decide how many rows of default values it needs.

Also, we should move the getDefaultAssetData outside of the loop and just request that data once.  We're never going to alter these values on the interface so it doesn't matter that each item in $values points at the same reference.  Ideally we would just pass just one copy of this back (not an array) and the template would just use the same values over and over where necessary, but I understand why this makes things easier.