Implement debounce sequence according to USB 2.0 specs.

This replaces waiting a fixed time of 300ms for the device power to
stabilize. In the ideal case this reduces the boot time by 200ms per
connected device (including internal hubs).

This is very similar to what Linux implements and we use the same time
values. An interval of 25ms is used to check for connection state
changes, the stable time is at least 100ms as per the USB specs and the
whole process times out after 1.5 seconds.
Reduce port reset recovery time from 250ms to 50ms.

The specs say the reset recovery time is 10ms only. The extra 40ms are
taken from the Linux hub driver.
Poll more frequently for the first explore.

This reduces needless waiting for the special case of the polled and
synchronous first explore.
Fix build with tracing turned on.
Check for and report an error on key buffer overrun.

This usually wasn't a problem as the key buffer is generally large
enough to hold a single value. Still on short buffers or very long
it could have silently overrun before.
Return more than a single dirent at a time in bfs_read_dir().

Return as many dirents as fit into the provided buffer. The readdir()
implementation in libroot tries to get many dirents and caches them to
reduce the amount of syscalls and the associated overhead.

This reduces the syscall count dramatically for use cases where a lot
of directories are enumerated. A "git status" on a Haiku repository for
example goes from over 50k read dir syscalls down to just under 7k.
The performance gain is only around a moderate 5% in that use case
though.
FontManager: fixed trace mode
app_server: workaround for GCC 4.7 misbehavior in IntRect.

* moved the inlined BRect constructor of IntRect to the cpp file. GCC will inline the method
anyway.
* impacted methods were both AGGTextRenderer::RenderString() in
src/servers/app/drawing/Painter/AGGTextRenderer.cpp, calling the StringRenderer constructor
with a BRect reference.
* unless someone comes up with an explanation, I'll try to come with a smaller testcase to
submit this problem upstream.
Update translations from Pootle
docs: Clean up RaspberryPi Documentation; move

* Convert the RaspberryPi documentation to markdown
* Move into the proper arm port docs location
Add column to threads list view for stop reason.
docs: Add initial BeagleBone Black docs

* No porting has occured, just collecting
  information as it is a likely target
* #9716
Mesa: Update Mesa 7.8.2 package

* Fixes #9685 gcc2 debug issue
Mesa: Reorganize the Mesa BuildFeature

* Only specify some library deps on gcc4
  as they are unused on gcc2
Style changes in Alert and StyledEdit Find Window
Update CenterIn() and CenterOnScreen() methods in BWindow

* These methods now return the new point after centering.
* But more importantly CenterIn() does some new adjustments to keep the window
  position inside the screen edge. If you pass the screen frame into CenterIn()
  it skips these adjustments.
Adjust BAlert to position the alert using the revamped BWindow::CenterIn() method.

BAlert::AlertPosition() has been superceded by the new BWindow method and should
be considered deprecated. Note that the alert position is not in the direct center of the
screen, it is offset vertically like before.
Remove the alert dialog adjustements, they are now done in BAlert directly

The save panel adjustment has been kept and modified a bit to position the
window nicely. It too uses the BWindow::CenterIn() method that adjusts based
on the screen edges.
Close window on Esc
Style fixes and code simplifications