Now split into three separate packages. Still in Python.