moved Validation out because its not part of the typeclassopedia