Split off pathfinding code into its own function; all it has to do is modify passed speed, rotation floats. I've messed with vector fields some more, and while they work fairly well, they aren't good at differentiating between obstacles without a lot of hacking. Need to think about more intentional methods, especially considering our robot's really terrible control systems and responsiveness... occupancy map now has a visualizer, and has decay on obstacles not seen in a while.