Install without extension module if Cython is available but no C compiler

We've noticed that installing mistune fails if the user has Cython available but no compiler. That may sound like a stupid situation, but there are conditions where it happens, e.g. if someone has installed Anaconda on a Mac.

This uses what looks like a common trick to catch an extension module failing to build, and fall back to doing a pure Python installation. I borrowed it [from markupsafe](https://github.com/mitsuhiko/markupsafe/blob/master/setup.py), but the comments there say it's originally from simplejson.
has_cython vs have_cython