Profilers controllable via PYQTGRAPHPROFILE.

A new function profiling system is implemented.  Most importantly, this
allows one to profile various internal functions directly by setting the
`PYQTGRAPHPROFILE` environment variable to a comma separated list of
function and method names, e.g.

    PYQTGRAPHPROFILE=functions.makeARGB,ImageItem.render \
        python -mexamples

Specifically, items in `PYQTGRAPHPROFILE` must be of the form
`classname.methodname` or `dotted_module_name.functionname`, with the
initial "pyqtgraph." stripped from the dotted module name.

Moreover, the overhead of inactive profilers has been kept minimal: an
introspective check of the caller's name (only if `PYQTGRAPHPROFILE` is
set) and a trivial function (not method) call per profiler call.

The new profilers rely on `sys._getframe` to find the caller's name,
although the previous system (passing the caller's name explicitely)
could certainly have been kept instead.

Finally the API of profilers has been changed: register a
profiling point simply by calling the profiler, and profilers are
automatically flushed on garbage collection.  See the docstring of
`pyqtgraph.debug.Profiler` for more details.
Set version strings to 0.9.8 in source; these will be updated with major releases.
Added tools/setVersion script
setup.py now auto-generates version string based on pyqtgraph/__init__ and git info, if available
Added HDF5 file to demonstrate dynamically plotting a subset of a very large dataset
 * Loads only data that is currently visible
 * Downsamples to avoid plotting too many samples
 * Loads data in chunks to limit memory usage during downsampling
Added Dock.raiseDock() method
* Made new profilers compatible with old API
* Adjusted output formatting for clearer representation of nested profilers
* Message string formatting deferred until finish to reduce overhead
Merge branch 'profilers' into develop

New Profiler class from Antony Lee:
* Simpler API (with backward compatibility)
* Individual Profilers can be enabled by environmental variable PYQTGRAPHPROFILE
Updated contributors list
setup.py now modifies __init__.py on build to include a more descriptive version string if .git is present.
make setup.py more robust to possible errors during version string modification
Merge branch 'version_strings' into develop
* __init__.py now contains latest release version string
* installing from git checkout that does not correspond to a release commit
  will result in a more descriptive version string
Python3 fix for version-strings.