Optimization for concat, where no-op cases do not create new objects.

Fixes #204