Merge new code into Evan's branch so I can merge back

Just say yes