add functionality to handle arrays (with new test)
a bit of cleanups
wiping out and starting over