Disallow trailing commas in object literals entirely when targeting ES3

The idea is that since the ECMAScript 3 spec does not permit trailing commas in an object literal, we should not permit the construct unless we have a revised grammar for TypeScript that says otherwise.

This is a breaking change. I would personally rather amend the specification to permit trailing commas and simply not preserve them.

This is an extension of the work on #273.
or .join(",\r\n")