adding tests and improvements to mx.subtract