fixes to configuration auto-generating ported from auto-generate-config branch
_generate_all_config_items adjusted to return filename
modify astropy build to make the default configuration file
fixed unnecessarily long long in setup_helpers
implement code to install the default configuration file on import
updated documentation to reflect new behavior of on-import configuration setup
removed some debug code
added encode to subprocess communicate call to support py3.x
typo fix pointed out by @mdboom
Generation of configuration error message improvements
fixed encode/decode to making error mesages helpful in 2.x and 3.x
updated setup_helpers to run in build dir - this fixes py 3.x because before the 2to3ed version did not get run
Adjusted astropy/wcs/docstrings.py to work with configuration file builder on py 3.x
Moved ref_* scripts in coordinate accuracy tests to generate_ref_ast module.

This is necessary because the default configuration generation process visits all packages, including the test packages, so the import has to succeed even if pyast is not installed.
Adds the tocdepth directive to the main index so that the 'What's New' link can be rendered as a heading, but not appear in the sidebar TOC.  Also adds a small sphinx extension to work around the bug I seem to have found in Sphinx.  Will make a bug report to Sphinx describing the issue.
Possible fix for #594. I'm a little iffy about this because it feels hackish.  But it adds a new auto-generated module called astropy.utils._cython which contains a cython_version variable recording the Cython version that the Cython modules were last built with.  Technically this module doesn't *need* to be a Cython module, but that ensures that it only exists if the Cython modules were built correctly.  It has the added upshot of forcing the Cython C files to be regenerated if your Cython version has changed since the last build.
Fix typo that caused crash when Cython is not installed
Reworked approach to #594. The cython_version variable is no longer in a Cython module; that was a non-starter since it meant a compiled module would have to be shipped with the source distribution in order for it to know what version of Cython the C files were generated with.  Now there's just a generated cython_version.py that gets touched up any time Cython is used to the build with a different version of Cython from the last time.  This file will ship with the source distribution and its presence will prevent Cython from being used for a release version. But for git clones of a release the cython_version.py *won't* be present and Cython will be used.  So this should cover all the relevant use cases.
Remove unused import left over from an earlier version of this patch
Simplified logical statement and added some comments