Region Adjacency Graph

## Example Images
![figure_1](https://cloud.githubusercontent.com/assets/3823490/3291718/5ce9b952-f587-11e3-8c29-e2aace6d7794.png)
![figure_2](https://cloud.githubusercontent.com/assets/3823490/3291723/7074b134-f587-11e3-8c73-d28222891a21.png)


I think you need to be a lot clearer about the function signature of `weight_func`. Write it out: For each neighbor `n` of `src`, (and `dst`, see below), `weight_func` will be called as follows: `weigh_func(src, dst, n, *extra_arguments, **extra_keywords)`. The return value should be a float.