Feature/pybackend

Havent run the testsuite yet on it, still have a few TODO/NOTE/FIXME markers, but overall I've manually went through most of the features...