ide/debugger/watches: Improved + and - pointer operations
- Fixed potential regressions on: (Expression *)((byte *)newExp + (uint)((byte *)memberExpPtr - (byte *)exp))
- Fixed pointer addresses to always print as hex and small differences to print as decimal (e.g.  (Expression *)(memberExpPtr + 1))
- Proper handling of negative differences
- Fixed handling of offset on the left side operand