added support for legacy multidimensional arrays

previously, multidimensional arrays were accomplished by having
a flat array of type 'Mixed'. I added support for these again and
cleaned up a couple lines of comments
added multidimensional buffer tests and fixed several bugs

buffers being passed in as arrays causes a huge headache. Most of
this code is simply for dealing with that particular case in the
multidimensional realm. This is also passing all tests, including
the new ones