fix up incorrect array bound
make the type abstraction even more complicated - but i'm pretty sure the buffer conversion triggers are much more correct now