Add UPnP browsing and fix netstream/UI bugs
Do not replace the active HTTP response on failed seeks; seek_to()
only swaps responses on success so a failed Range request leaves the
stream readable at the current position
Satisfy small forward seeks (<=128 KB) by skipping bytes in the
existing response instead of issuing a new Range request to avoid
extra round-trips during codec metadata parsing
TYPE_ID3 handles for remote tracks that fail to open now send
BUFFER_EVENT_FINISHED with an empty mp3entry to prevent stalled
playlist restore
Fix Files view icon hover by using a direct-child selector so the
.no-play guard is respected