"One thing I would like to add is that you can't change your snapshots
directory for a VM in which you currently have snapshots saved."
First, follow the advice of the first answerer, and change the default machine folder by going to
File>>Preferences>>General and changing the path. This only changes the path for subsequent machines you create, not for those you've already got.
Now, close VirtualBox, and move the contents of your
Users/YourUserName/VirtualBox VMs folder to whereever it is you want it.
Then the edit
Users/YourUserName/.VirtualBox/VirtualBox.xml file. Change the paths there to your VMs to wherever you've moved your VM folders, reboot your machine, and you're good to go - no Snapshot flattening required!