CUDA framework for menpo

The aim of this framework is to simplify as much as possible the development and use of future modules written in CUDA. The idea was to consider that the choice of using or not CUDA should be made Python-side in order to allow the user to choose between the classical algorithm or its CUDA implementation.

Checking if CUDA is available or not is quite straightforward:
```Python
from menpo.cuda.tools import is_cuda_available
if is_cuda_available():
    #run CUDA version
else:
    #run non-CUDA version
```

Adding CUDA modules is also intuitive. It can be done by adding the `*.pyx` file in the list `cython_cumodules` of `setup.py`.
don't worry about the above changes I mentioned. The change to `if not on_rtd` is to do with ReadTheDocs. @patricksnape will need to take a look at this and let us know what we need to do to make sure our documentation will still compile in light of the changes.