9e56c78038
This stuff almost is an abstraction layer, but it's in a strange place. Also, the layout of TypedValue isn't something we've been using through an abstraction layer, and if we want to later I think we won't want to do so using this one.