Handle streaming from URLs on local networks as local plays (fixes #1)

This commit causes the add-on to treat UPnP streams from local networks (e.g. a stream from 192.168.0.10) as local plays, and adds unit tests for the local play detection code. The `is_local` function is in a separate file so it can be unit tested without having to import any of the xbmc modules referenced in `utils.py`

Some of the changes to `scrobbler.py` aren't strictly necessary, but I felt the changes made the logic easier to understand, and also enabled more precise log message.