array is now mostly c++11 compatible