Not sure if you did this or it was a bad merge. I replaced `TypeValue` with `Value` here to handle the case where a non-type value is used as a type. Perhaps we should have a different expression in that case. I'll open task #51 for this. For this pull request, I'd prefer if you just reverted this file.