Upnp discover hardware resource added

added upnp discovery and fixed some documentation bugs. please review my code :)
Can you also delete it in removeDevice if there's no other device around that uses UPNP any more?