Replace a use of SWAP macro with std::swap in object_ifc.cc
Make BLI_utildefines work OK in g++

- Don't redefine SWAP if already defined (not sure why this is needed,
  but BLI_math defines SWAP too)

- If __cplusplus is defined

  - Define SWAP to use std::swap

  - Use less fancy ABS implementation
Fix compilation errors after merge