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`.
We are quite strict in sticking to [PEP8](http://legacy.python.org/dev/peps/pep-0008/), including it's 79 character max line rule. We even use this rule in our C/C++ code to keep things consistent. If you could ensure all this PR is limited to 79 chars per line that would be appreciated! 

This is probably a good time to recommend [PyCharm](http://www.jetbrains.com/pycharm/). I'm a big Vim user and at the start used Vim exclusively for Python development. Switched to PyCharm about a year ago and it's such a big help for refactoring, completions, understanding class hierarchies, lots of things. Perhaps most importantly it makes sticking to PEP 8 easy because it will by default lint everything you type to make sure it conforms to it.

Either learn PEP8 and maybe look for a Vim plugin for it or get PyCharm - I'd recommend the latter, it will make your life much easier! ;)