Currently the "natural' way to consume a select query (or REST equivalent) that returns multiple rows is to use a table. Most of the CRUD features to interact are wired up in the table component.
I would love it if the same wiring would be possible for a form component of some kind. You provide the form with a .data property just like a table. You place other components into the form and tell them which column they represent, just like you essentially do with a table's columns property. Record navigators are provided in the footer (or header.) You would need a cursor behind the scenes which should also be settable to programmatically change records. Maybe a way to link the cursor to a table so you could easily create the classic linked table/subform patterns.
You could set the form editable in which case it keeps track of its dirty state and provides a save button, just like the table works (I see a pattern here!) Click an add button and the form clears ready for a new record to be added. The form maintains newRow and recordUpdates like a table making the update/insert queries easier. You would not need bulk update or insert unless you provided cached updates (like suggested here.
This is all possible now, I have done it several times now, but it does require extra, somewhat kludgy, work to do right.