Demote dependencies & configurationize Selenium

* Enable configuration of Selenium webdriver via environment variables to
  specify Chrome or Firefox (and hopefully in the future other things)
* Enable conditional imports of non-critical, non-unit-tested libraries so that
  their installation can be avoided when unnecessary.
* Creates suggested_requirements.txt to document which libraries these are and
  give users a chance to pip install -r them all.
* Update documentation to reflect requirements.txt and
  suggested_requirements.txt as the final source of truth for Python
  dependencies.
* Pin gdata version at 2.0.17 as the comments in README_SETUP.md previously
  indicated it should be. Pin selenium version >= 2.30 so it works with recent
  firefoxes.
* Configure Travis to use Firefox with the Adobe Flash plugin installed for
  Selenium testing. This fixes Selenium testing on the grid. (closes #2272)