Catkin

Not ready to merge yet, but might as well post it here so people don't duplicate work.