I don't know, I kind of like having *just* the performance and wrapper code in cython, but keeping the class structure in pure python. 

I also think the metric class structure is something that might change, so it seems bad to move it to cython early on.