Just tested moving the call to self.set_project down and it works just as well.  I just needed it to work, so once it was working, I tossed my working vomit back here, in case it was the right solution.  If it's not, then I hope this is an acceptable way to point out what the issue is so that someone smarter than I can fix it correctly.