This is causing the unit test to fail, but otherwise everything looks good. I'll mock this out and rebase on your changes in a new PR to get this landed quickly. Nice work!