add thumbnail property to BaseAudio

this can be used, for example, to associate an audio
file or stream with an image related to its author,
or an album cover

Signed-off-by: Pierre Mazière <pierre.maziere@gmx.com>
ReplApplication.get_object(): return None if method does not exist

Signed-off-by: Pierre Mazière <pierre.maziere@gmx.com>
ReplApplication.get_object(): exclude backends which does not implement 'method'

Signed-off-by: Pierre Mazière <pierre.maziere@gmx.com>
radioob: add support for download and streaming of BaseAudio objects

Signed-off-by: Pierre Mazière <pierre.maziere@gmx.com>
radioob: add support for playlist of BaseAudio objects
grooveshark: migrate from ICapVideo to ICapAudio

Signed-off-by: Pierre Mazière <pierre.maziere@gmx.com>
grooveshark: fix unitialized property user_id in GroovesharkBrowser

Signed-off-by: Pierre Mazière <pierre.maziere@gmx.com>
grooveshark: fix NoneType return value when user is not logged

Signed-off-by: Pierre Mazière <pierre.maziere@gmx.com>
grooveshark: fix typo in test

Signed-off-by: Pierre Mazière <pierre.maziere@gmx.com>
grooveshark: fix test if user is not logged

Signed-off-by: Pierre Mazière <pierre.maziere@gmx.com>
grooveshark: adapt test for logged and non logged users

Signed-off-by: Pierre Mazière <pierre.maziere@gmx.com>
rename AudioStreamInfo into StreamInfo

Allowing future use with upcoming VideoStream

Signed-off-by: Pierre Mazière <pierre.maziere@gmx.com>
ReplApplication.get_object(): fix backend lookup

because self.enabled_backends contains BaseBackend objects
and not backend name strings

Signed-off-by: Pierre Mazière <pierre.maziere@gmx.com>
Fix bug introduced in ReplApplication.get_object refactoring

Ref e15b2a847318248449f9e442dd942e54194ee4aa
    e0417f702dde5e3d8181cb89597329b256356756
    0668db2b5a19718e1024b189eba9453d5d1361a6
Catch error in condition evaluation

And return a better message to users
Remove unused imported

Ref e7805cec122769e0974bd5cd44dd95134f0f1b3f
Coding style
More text in error
Allow anonymous surfing on nolifetv
restrict ls to 40 results by default