BString::SetToFormat(): Add printf format function attribute
_user_debug_output(): Fix for long strings

The wrong length was passed to debug_puts().
BLayoutUtils: Add GetLayoutTreeDump()

Returns a debug output string listing the basic layout properties of
the view/item hierarchy.
BControlLook::ComposeSpacing(): Avoid non-integers
Add private BViewPort class

* It simplifies putting regular layout-aware views or layout items into
  a BScrollView.
* Not quite complete yet: Height-for-width support is missing, but that
  also requires fixing BScrollView in this respect. Scroll bar auto-hide
  support would be nice as well.
package daemon: ProblemWindow: Use a scroll view