need to check virtual things and vector vs pointer thing
change readme