operators overloads and minor fixes