Translate pointers to arrays

by expanding the array typedef, dropping the array type and thus leaving
the pointer point to a "single array element".
Detect constructs with "too many pointers"

FB only supports 8 pointer levels, and the same is true for fbfrog
internally. To prevent overflows we have to detect the situation.