Add relative install/source dir paths for templates and resources to setup.py.
Fix several problems with installation of compiled translations files.

 * ADD function ``get_supported_langs()`` to setup.py, which determines which
   completed, compiled translations files are present in our source tree, and
   stores three things:

     1. The LOCALE code for the translation.
     2. The path of the directory to install the files to, relative to the
        current ``sys.prefix``. (``sys.prefix`` is where Python files are
        going to be installed, and it is set by the OS's interpreter first,
        and then occaisionally changed according to various factors, like
        whether or not we are working in a virtualenv, if the package is being
        installed from a DCVS/egg/tarball/zipfile, if the package is being
        installed via pip or via a package manager, etc.)
     3. A list of files for that LOCALE which should be installed. In our
        case, this should only ever be one <LOCALE>/LC_MESSAGES/bridgedb.mo
        file per LOCALE.

   These three things allow us to tell both setuptools (and the underlying
   distutils mechanisms) how/where to install everything.

   The next thing that ``get_supported_langs()`` does is take the list of
   collected LOCALEs which are to be installed, and rewrite a line in the
   following new module:

 * ADD a new module, lib/bridgedb/_langs.py, which has one variable,
   ``supported``, which is a list of two-letter country codes of languages
   installed. When "python setup.py install" is run (or any setup.py command,
   for that matter) the ``supported`` variable in lib/bridgedb/_langs.py is
   rewritten to be the current list of languages for which we have completed,
   compiled translation files.

 * ADD function ``get_langs()`` to lib/bridgedb/_langs.py. This simply fetches
   the current value for ``supported``.

 * ADD a package attribute, ``bridgedb.__langs__``, which uses ``get_langs()``
   to store, in the installed version of BridgeDB, the list of supported
   languages which were also installed. :)

 * ADD an entry for ``lib/bridgedb/_langs.py`` into .gitignore, so that a
   locally rewritten file is never committed.
Add a real fileheader and full version string to bridgedb/__init__.py.

Might as well, while we're at it.
Add get_template_files() function in setup.py for installing web resources.

 * ADD ``glob`` dependency to setup.py.
 * ADD ``get_template_files()`` function to setup.py, which simply globs for
   filenames which match various directory patterns, in order to obtain files
   which should be installed for BridgeDB's HTTPS distributor.
 * FIXES a bug where robots.txt was not being installed as a resource file.
Refactor get_data_files() function in setup.py.

The ``get_data_files()`` function now takes a boolean ``filesonly`` parameter,
if True, it returns a list suitable for the ``package_data`` parameter of
``setuptools.setup()``, otherwise it returns a list which is compatible with
``distutils.command.install_data.install_data.data_files``.

We can now remove distutils entirely from setup.py, but I decided to make this
function compatible with both distutils and setuptools because Python
packaging has been in turmoil for a while now. (Hopefully, it's done, but I'm
not holding my breath.)

 * FIXES a problem with some .mo files not getting installed (if they didn't
   already have a directory for their LOCALE in build/).

 * FIXES a bug where all .po files were being installed, even though they were
   added to the ``exclude_package_data`` parameter of ``setuptools.setup()``.

 * FIXES (along with commit ef784165002086cbc5b8131edcde815326a63009) a bug
   where the robots.txt file was not being packaged correctly.
Rewrite the package_data param to setuptools.setup() to use get_data_files().
Fix exclude_package_data param in setuptools.setup().

 * CHANGE ``exclude_package_data`` to specify the package explicitly. This
   seems to fix a bug where .po files were still being installed.
 * ADD an exclusion for all .pot files.
 * FIXES a bug where lib/bridgedb/i18n/templates/bridgedb.pot was being
  installed by setuptools.
Refactor message_extractors in setuptools.setup() and add a notetoself.

 * CHANGE ``message_extractors`` to use the ``pkgpath`` variable. The less
   places in the code with arbitrary hardcoded paths which may change at some
   point, the better.

 * ADD an XXX note about the glob pattern ``public/**`` in
   ``message_extractors``.
Remove subprocess import from setup.py; it wasn't used anywhere.
Remove installData class and all distutils references from setup.py.

 * FIXES all the distutils hellspawn bugs arising from the disturbed grave of
   distribute. Everything is purely setuptools now.
Some pep8ification on setup.py.
Add a download_url to setuptools.setup(). While we're at it, why not?
Change 'install' and 'force_install' Makefile directive to be verbose again.
Merge branch 'hotfix/9959-pas-danglais_install-data' into develop
Add doc/HACKING.md and move the "Maintenance Notes" from README to it.