Add initial plugin support

Plugin design notes:

* New configuration option for web UI pluginDirectory
  (Default of /opt/fpp/plugins)

* Menu will search plugin directory for plugins to include.
  - To add a UI item, an include file will need to be present
      o status_menu.inc - List elements to add to the status menu
	  o content_menu.inc - List elements to add to the content menu
	  o output_menu.inc - List elements to add to the output menu
	  o help_menu.inc - List elements to add to the help menu
  - New basic file plugin.php will take parameters to load plugin
    pages with same formatting.  Instead of using a plugin page directly
	which may or may not be in the docroot, and also so plugins don't
	have to be updated with UI changes, instead this page just loads the
	content from pages provided from the plugin
	  o plugin parameter - Which plugin to load a page from
	  o page parameter - Which page from the plugin to load (If none
        given, it will attempt to load "plugin.php" from the top level
		of the plugin installation path)

* Remove rds.php which wasn't linked anywhere, but was going to be the
  landing spot for RDS work before the plugin system was discussed.

(cherry picked from commit 946fbf8e9ec34fdfc6261ae999565669443339cb)

Conflicts:
	.gitignore
	www/config.php
	www/css/fpp.css
	www/menu.inc
Quick whip-up of a plugin install/uninstall system

* pluginData.inc.php - Contains the list of plugins and appropriate
  data.  This is for developers to add their plugins to for details on
  plugin installation, home page, bug URL, etc.

* Scripts to install/uninstall plugins

* plugins.php - Page to display the list of plugins listed in
  pluginData.inc.php for users to install/uninstall

* No update check/support available yet.  Will need to implement
  something that uninstall/re-installs.  Probably easier in case the
  hooks change for plugins than trying to maintain an "update" system
  similar to the main FPP update system.

Icons released with CC license downloaded from here:
http://www.gentleface.com/free_icon_set.html

(cherry picked from commit 6232bd14770686e8458079c4e691a4b4930171f3)

Conflicts:
	www/css/fpp.css
	www/fppxml.php
Force add a file to the plugins directory so it is created.  Without it, the directory isn't there and plugins fail to install.
(cherry picked from commit ce807b679fdb39c08ad5dfb01defaac872b12930)
Fix bug in uninstall script and log when failing the PHP side.
(cherry picked from commit be251602195b5c449fbcd185045816d72f8298ea)
Run the plugin scripts from the plugin installer script rather than PHP so they get logged like the rest of the process.
(cherry picked from commit bc6f54bca8b565ff75d110512f78318671a9d681)
Update scripts for plugins and cross-platform support:

• Run all scripts with bash, not sh which could be dash or some other
  p.o.s.

• Allow overriding script variables in environment for cross platform
  support.  Don't assume the scripts are run on the PI.

• Even if in /opt/fpp only run SUDO if settings file is default.  We may
  want to look into another method of determining whether we attempt to
  run things using sudo or just running them directly.

• Add environment variable over-riding capability for the version files
  so we can put an arbitrarily high number for non-PI systems that we
  don't want to try apt-getting and such for configuration.  It will be
  up to the user to keep a working configuration on a non-pi.
  Eventually we'll probably want to split support for Pi/BBB and maybe
  others.

• Export 4 variables that are parsed from the web interface to the
  environment just after parsing the settings file in the web interface.

(cherry picked from commit 6f96aaef8b88f42f2f09c518cabced50c2a46a2d)

Conflicts:
	scripts/common
	www/config.php