pulling from upstream on 10/20

will be lots of merge conflicts