I was able to do this, but my solution was to comment out a few lines in the slick.checkboxselectcolumn.js file. From what I can tell, handleSelectedRowsChanged() really overwrites the contents of the flag cell header with a new <input> element every time it changes - it doesn't just change the checked attribute. Therefore, I commented on the lines in this function that make the exchange, as well as several others that add a flag to init, and the - (de) event selects everything.
https://gist.github.com/1085623
Probably the best way to get close to this, but I needed something to get out the door as soon as possible.
source share