Finally have enumeration MVVM binding working

This was way too hard to get right.