All that stuff on the staging branch

it's going into master