implement any correctly
move func validation to Func
fix comments
rename t to types
add validation to Null and Undefined
v0.1