Making VideoCastControllerActivity's UI a tiny bit more general

Now, if needed, developers can define an ImageView for the background image instead of the previous
background that was used for the layout. To do so, copy the cast_activit.xml from res/layout
to your own res/layout and update that by:
- add an ImageView
- remove the android:id="@+id/pageView" from the RelativeLayout and put it on your ImageView.
The rest will just work.
Fixed a number of bugs to avoid NPE in various cases
Merge remote-tracking branch 'upstream/master'