move to Array/Object dichotomy

using constructor just feels leaky. I have to think about what affect
that might have when I use it so its out :(