Merge dev with upstream staging

So... there's been a slight (major?) catastrophe with the dev branch. Never try to rewrite history once it's published... especially if you have no idea what you're doing. 

Hopefully this should salvage all of our work.