Returns the number of dimensions of the given array type
Returns the array's base type
Removes any Nullable specifiers, even multiple levels
Will strip off any Nullable, Typedefs and qualifiers from a given type. It's a bit paranoid and tries to remove any identifiers multiple times, until the removal attempt yields no changes, but it shouldn't be a problem since it's all just compile-time.