New branch for refactoring + TODO
Merge branch 'master' into refactoring

New feature added to master that also needs to be refactored.
Merge branch 'master' into refactoring
Merge branch 'master' into refactoring
Created PyDev project! Also, fixed some indentation inconsistencies and
added some comments to the LastFMGenreGuesser.
Merge branch 'master' into refactoring
Merge branch 'master' into refactoring
Removed useles string substitution.
Removed old TODO tag.
Merge branch 'master' into refactoring

Conflicts:
	lastfm_extension.py
Minor change on install script
Starting refactory: created base extension class whit an interface all
extension should present. Also created a singleton ExtensionBag to keep
track of loaded extensions and share them with the diffents parts of the
plugins that may need them.
Implementing the Love/Ban functionalitty using the new defined base
class. 
Modified schema to use a dict to mantain extensions' specific settings,
e.g. the 'enabled' property.
Added mechanisms to initialise/dismantle the extension given the
connection status of the plugin and the enabled property of the
extension.
Implemented the extension_desc property and some minor changes.
Rearranged some code, added some comments and added a destroy function
to ensure correct resource deallocation.
Added a callback to the default widget for extensions to enable or
disable the extension.
COMMENTS COMMENTS COMMENTS!!!
Fixed issue with settings signal.
Fixed enabled property.
Added extension loading in the LastFMExtensionBag.
Some test code added (should be removed later)
Fixed wrong references when calling some methods.