Don't return the parent from parseStyle.

This risks creating a loop in the widget hierarchy if someone puts a <Style>
element in e.g. a <Children> block of a WidgetGroup. Instead, just make sure
that all calls to parseNode properly handle returning NULL.
Add XmlParse::selectElement.
Attempt to simplify our overly complicated skin construction process.

* Move all widget parenting and layout out of MixxxApp.
* Eliminate MixxxApp::m_pView. Instead, setCentralWidget on whatever is returned
  from the SkinLoader.
* Create the skin inner and outer widget holder explicitly in
  LegacySkinParser::parseNode instead of spreading it all over MixxxApp and
  LegacySkinParser.
* Clarify how parseBackground deals with the inner and outer widget.