I think, there is no problem, but I am not sure that I understand what you want:
- do you want to edit/insert multiple records of/to the same table (person-address-relation for example) at once, per single form's accept?
- do you want to edit/insert single records of/to few tables at once?
or do you want it all?
If you want to have dynamic form without submitting it or extra requests (like list-widget)- you have to use JS.
Notice, that from redefined per controller call, you can add a button 'add address' (for example) to your form and
redefine form (i.e. add field) per button click
Please, be more concrete