I've changed Vagrant::VM to be slightly more in line with what I imagined. However, doing this change has definitely broken _everything_. We now slowly must cobble back together based on this new API.