WIP Significantly smaller PR

I tested this better than is suggested in my notes but not as much as I will later
Aha! Circular imports. I'll fix this