added initial templated vector container implementation