collectionShell: listen to playback:ended event
shells: fire MediaView:Ready event

This event announces that a mediaView is fully ready. MediaViews that
are not immediately ready on initialization should set readyOnInitialize
to false
shells: add playOnReady option
collectionShell: forward `playOnReady` option to subshells
slideshowShell: play subshells when they load
collectionShell: bugfix: dont call subshell.remove

This is a temporary fix to avoid unbinding listenTo Backbone events.
These events need to be listed in a way that enables them to be rebound
after they have been removed.
collectionShell: bugfix 'playback:ended' listener
slideshowView: simpler countdown paradigm

Always countdown the delay amount, and do not progress until countdown
has completed. If a finite-length piece of media is playing when the
countdown finishes, wait for that piece to conclude and progress on
'playback:ended'