Some bugfixes and optimizations for UPNP

UPNP fixes:
1) MediaServerServiceDesc.php - fix exception on "<?xml..." parse when php option - short tags - is set

2) bug fix: in createDIDL method sometimes comes single item, not array. But array is expected. And method crashes.
Fix: detect if single item is come and convert it to array.

UPNP improvements:
3) upnp broadcast packet sending page - added button for automatically periodical page refresh for sending broadcast packets without using cron, for development purposes.
When press additional button, page will refresh and send broadcast packet every 10 seconds

Common improvement
4) Plugins class, method get_plugins, make static cache for optimization when multiple calls of this method.
Every time when calling this method the plugins folder was scanned and analyzed for installed and active plugins.
For example - when adding songs to catalog, this method was called thousands times, for every added song.
Now it's doing only once, at first call.