added equality test, vector addition, and vector scaling