Postpone the conditional unmute.

Push it to the timer queue so it will be called after everything is set.
Track the HTML5 player state.

So it works consistently.
Set quality first.
Build optimization.
Update PlayerSize CSS.

Also apply styles before the UI is rendered.
Set state to 'buffering' after quality change.

A workaround for the HTML5 player.
Removed the 'ready' event.

It was pointless since we raise an exception if the API is not
available at the time of initialization (4b27084a).
Move initializations to the constructor.