Changed IsZero to use epsilon, removed use epsilon comment, and removed virtual destructor, which I don't know why I added that.