iteratively find optimal column height

This commit also detaches the element that made each column go over
the target height whereas the simple example before this was just
leaving the element in, making an over-height column.
rename defaults.js to constants.js
add slightly more complex HTML for simple sample

It is good to have an example where there's more than one
level of DOM hierarchy, so I added a simple box to one
paragraph to break things up a bit and test our recursive
splitting better.
recursive splitting, including text, actually working