Carefully map Python to OGR schema.

Closes #105.

The OGR Shapefile driver will munge field names to fit the
format's length limitation. This put collections opened in 'w'
mode in the state of potentially not being able to write
features when their properties didn't match the munged names.

We don't have a way of persisting the original field names for
Shapefiles, so when you create a Shapefile with a field like
'VeryVeryLongFieldName', the next time you open it in 'r' or 'a'
mode, you will see a field named 'VeryVeryLo'.