Tab selector refactor

- clearer naming of DOM hooks, and using consistent names in tests / implementation for the same hooks, for readability
- cleaned up / added JSDoc
- use the same markup for test fixture and frontend styleguide markup - paves way for shared code generated from helper
- introduce _checkComponentMarkup method - does the component markup on page load have all required sections? If not, fail the component initialisation promise
- uses the mediaQueries component - this now initialises when loaded with Require. No need to call an init method on it (returns a literal, not a constructor)