[WIP]  Applet settings

TODO:

* <del>Make sample applet demonstrating all settings</del>
* <del>Documentation (tutorial/primer)</del>
* <del>Handle version upgrades - changes to settings</del>
* <del>Handle single-instance-only applets/desklets - don't use instance id for setting filename, don't destroy</del>
* <del>Handle import/export of settings</del>
* <del>Implement settings for desklets (js side is unchanged, will need to make slight changes to python end to distinguish applet from desklet</del>
* <del>Integrate into cinnamon-settings->applets (wait until new applets page is merged)</del> (Applets only for now)
* <del>Handle cleanup on applet removal/uninstall - delete settings files, etc..</del>
* <del>Add file changed listener to python side</del>
* <del>Add button widget to activate a function via dbus</del>
* <del>Add reset-to-defaults button</del>
* <del>Look into a standalone setting program launcher widget?  utilizes the 'configure' button in cinnamon-settings, but automagically launches a .py program or something *** For the moment, I'm going to limit this to being able to define a callback button, which calls an applet method, which launches a standalone app.  The developer can label it "Click to launch configuration for this applet" or some such.  I need an exit strategy from this project</del>
* <del>Add tooltips to settings</del>