Clean[T] implemented with type classes