added neg and comp, no tests, other minor changes