TD Ameritrade was the only company I found that would let me open a Roth IRA account as a US Citizen living in Canada -- I moved my account from Vanguard to there. They're merging with Schwab International, and I wanted to make sure that I'd be able to continue to hold my account with them (because if I had to move it somewhere, it might be hard to find someone who would let me open a new account). I just spoke to a rep, and he said that IRA accounts for US citizens in Canada will operate as normal. Brokerage accounts would be withdrawal only, though.
I just wanted to share this because the rules that various brokerages have around what US citizens can and can't hold while living in Canada keep shifting.