Allow objects to be flipped horizontally and vertically

Flipping is supported for tile objects and polygons, and for both
orthogonal maps and isometric maps.

Flipping currently does not take into account object rotation,
so "horizontal" flipping might mean something else for rotated objects.
Also, when flipping groups of objects, they are flipped individually.
These issues can be resolved later.

Closes #58  (flipping for tile objects)
Closes #116 (applying tile offset to tile objects)
Closes #154 (flipping for polygons and polylines)