modified the ~ operator to work as a binary as well (to implement self.join(~other))
unit test for javatypes