Complete refactor

Now using options, node data to store the widths, heights, and margins,
delayed reflow, jQuery.animate(), and a bunch of other optimizations.