good points, let's get negated types and higher kinded types in there then you've got yourself a deal. maybe regex thrown in too for flavor