It looks like the partitioning part would be easier to do manually in Disk Utility. There I can just specify 16 partitions and let the application figure out the details of size and names.
If you know the size of the partitions you want/need, then it's easy to do. If you want them to all be the same size then a little AppleScript math before the diskutil command will do the trick, or you could use the % form:
diskutil partitionDisk disk2 16 GPT jhfs+ part1 6.25% ...
where 6.25% is the equivalent of 1/16 of the total disk space. Creating 16 partitions of this size will consume the entire disk (although you might want to use 'R' for the last partition to use the remaining space, just in case there are rounding issues.
Will the repeat script as specified rename the target partitions to whatever the source partitions are named? I assume it will.
You know, that's a good question. Off hand I don't recall whether asr restore copies the volume label or not. I suspect not so you'll either need to name that at the beginning (via the diskutil partitionDisk command) or after the data's copied, via standard AppleScript commands to rename disks, or via diskutil rename.
I know I can get the device IDs via the Get Info button once in Disk Utility, but is there an easier way?
You can get device IDs via diskutil info, but the trick is identifying which disk is which. A little experimentation might be in order.
And can you explain why why the IDs in the repeat script end in s, as in disk1s?
Sure - disk0 refers to the entire disk and all its partitions. The s denotes a slice (aka partition) on that disk.
So disk0s4 refers to the fifth slice/partition on disk0 (slices are 0-based, so disk0s0 is the first partition).
Note that the boot volume is commonly disk0s2 - the third partition since there's likely a partition map and a EFI boot partition before the actual boot volume. You'll need to look at the partition map of a sample disk to work out what the appropriate numbers are.