UPDATE: Use the method in this gist instead.
We want to partition a list into N chunks where we use every item in the original list and the resulting chunks differ in size by at most one element.
We devised a chunk
method for this, admittedly kinda hackish ... but it works.