Enforce "All callbacks on the main queue" rule

Change-Id: I0ad39b0fddcd90a5642f607254bb332e67e422f7
Add batching support to SPSparseList.

Change-Id: Ie73aa87d7bdf1af04349c417329029c494818deb