More work on Device plugins

Now loading at same time as modem plugins.  FileSDRDevice added as first simple device test
All modems and devices are now displayed in UI using plugin list

Used pseudo plugins for all the current devices so that we have a PluginInfo object for each menu selection.  That gives us all the info, filename, interface, etc.  Will probably switch to storing filename of device in settings since it's always unique.
All Internal SDR devices now derive from DeviceInterface and all SDR* references replaced with DeviceInterface*.

This will let us create the first DeviceInterface* plugin which should work with the rest of the code
Switched from SDR::Factory to plugin load

Internal SDR objects are now created when pseudo-plugins are created in plugins.cpp.  These are assigned to the deviceInterface member, just as a regular plugin would be when loaded.  So we now have permanent objects for every SDR and no longer have to create and destroy them.  The active device deviceInterface is kept in global.sdr, so it is always available.  Internally sir variable is still used everywhere, it's just gets its value from global->sdr when the receiver is turned on
Fix broken build caused by pebble lib directory change in earlier checkin
Now tracking selected SDR device by filename, which will always be unique.  Removed oldEnum references which are no longer needed
FileSDRDevice plugin works!

Switched to using SDR as 'home' class for all internal and plugin devices.  SDR now has a pointer to plugin if that's the active device.  If so, it delegates interface calls through that pointer to the plugin.  If *plugin is NULL, then we are using internal devices and calls are routed through inheritance.  All these internal devices will eventually disappear and we'll be left with SDR as a delegator.