Recursively adds microweights to a render array, similar to what form_builder() does for forms.
@todo Submit a core patch to fix drupal_render() to do this, so that all render arrays automatically preserve array insertion order, as forms do.
public static function addMicroweights(&$build) {
$count = 0;
foreach (element_children($build) as $key) {
if (!isset($build[$key]['#weight'])) {
$build[$key]['#weight'] = $count / 1000;
}
static::addMicroweights($build[$key]);
$count++;
}
}