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`.
`setup.py` makes a call to `get_cmdclass()` from `versioneer.py`. In order to compile with CUDA I needed to overload the `build_ext` used during compilation time (call to `setup` in `setup.py`). For that reason, I added `build_ext` in the returned value of `get_cmdclass()`.

Let me know, if you have a better way to do so.