Avoid nested floats spilling always to a newline

Workaround for #46

This is a quick and dirty hack. In the first pass, nested floats always get squeezed out into new lines. To avoid that, the first pass is detected with a condition (desiredWidth <= 0).

This is not a robust solution. A better way would be:
1. to use a separate boolean parameter for the first layout pass.
2. avoid overflowing the line. In the current workaround, a float can overflow the line.
minor refactor
Merge pull request #47 from hrj/i46_nested_float_workaround

nested float workaround