FlattenedList(sourceList: ObservableList<out ObservableValue<out A>>)
FlattenedList flattens the passed in list of ObservableValues so that changes in individual updates to the values are reflected in the exposed list as expected.