Major refactor of setup.py, added git-dev command

New feature: `python setup.py git-dev`

This creates a default git development environment for you by calling

    git submodule init package
    git submodule update package

and then creating symbolic links in ./clawpack/package.  (If the package
directory exists and is non-empty, the installer will not call the above
commands) for each package specified in the top-level SUBPACKAGES
dictionary.

By default, all packages are initialized, updated, and linked in.

If you call `pip install -e .`, the git-dev command is called, then all
Python packages will be built.  PyClaw and Riemann currently require
that f2py is available and functional, which in turn depends on a
functional Fortran compiler discoverable by f2py/numpy.  The installer
will currently fail if these dependencies are not met.
added some top-level documentation