added 'is' for pointer, tuple, function types

fixes post decl structs not being seen as the same type.
refactored tuple to allow for dynamic array

using tupleValue
tuples codegen is deferred until needed, so we can determine the required type format (array, struct, etc)
using constants
identifier expression unary dot is now parsed as part of the identifier expression
TODO: do not overwrite local tuple constants