[tvshows] don't set scraper if we find a tvshow.nfo file.
Fix webserver memory leak

If the webserver is passed an If-Modified-Since value, which indicates
the
client has the current file, there is nothing to send, the code leaked a
context object.

To fix this I've converted a couple of items to smart ptrs.

The context is now an auto_ptr, and if it's used with the mhd callback
we can pass ownership by using release, otherwise it'll get destroyed on
exit of the function.

Also in the context, the CFile object is now a shared_ptr<CFile>, note
that the Close call is carried out in the CFile destructor.

This should make sure that appropriate cleanup occurs as things go out
of scope, without needing to have all the right deletes in the right
places.

In the free callback move the delete before the trace line, so that we
can be sure everything has been closed and freed when that trace line
occurs.
[playlist] ensure shuffle/repeat status is set after settings load
[cosmetic] remove unused functions
dvdplayer: drop StreamLock section that doesn't protect anything anymore
dvdplayer: drop unused last sub variable
dvdplayer: drop some old OnExit debug logs
dvdplayer: drop parameter from CheckPlayerInit that is part of other
dvdplayer: factor out check for selected stream
dvdplayer: add wrapper around Open(*)Stream based on CCurrentStream

This allows several code deduplifications.
Revert "[pvr] provide fps hint from pvr demux if available"

Hints is already filled with rate/scale from the construction
of the hints object from the stream.

This reverts commit dd237e82e0149d305fd0886485dc78252389ee16.
dvdplayer: factor out common code from Open(*)Stream
dvdplayer: factor better stream checks
dvdplayer: factor out stream change detection
dvdplayer: make sure we setup changes variable properly on open
dvdplayer: add generic interface to dvdplayer stream players
dvdplayer: generalize Close(*)Stream functions
dvdplayer: factor out part of openstream code
dvdplayer: don't signal audio started before we have output a packet
dvdplayer: drop try catch blocks that should never be hit

We don't throw exceptions in dvdplayer so these would never hit.

Note. I've skipped re-indenting for now since the diff would be
unreadable and history would be harder to track. Can be done as
a purely cosmetic change later.