isVariablyModifiedType() method on Type not consistent with the standard

Per the standard, "int (*)[1.0]" is a variably modified type; however,
isVariablyModifiedType() returns false because it only checks for
vlas. I don't want to just fix this, though, because that will make
isVariablyModifiedType() and getAsVariablyModifiedType() inconsistent.
Should I rename the existing isVariablyModifiedType and
getAsVariablyModifiedType() to something different?

Ultimately, I think we should split incomplete array types into a
separate class from VariableArrayType... they are conceptually
separate and splitting them will make these predicates less confusing.
Any thoughts on that?

-Eli

Both sound very reasonable to me!

-chris