Apply final machine view rendering fixes from bad rebase

This is the final set of changes meant to be in the machine view rendering branch that got lost in a bad rebase.

This branch adds missing code comments and also sets the header labels through the widget setLabel rather than poking at the DOM. This required refactoring how we set up the headers so we can access them directly.

QA:
Add or remove some machines and the machine count in the header should update correctly.
Selecting a machine should set the container count correctly in the container header.