oops - I didn't realize that I had committed that partial implementation in this branch, I thought I stashed it. Should I finish that up here, or wait for another PR?