Some postgresql provider and PostGIS-related processing improvements and fixes

This pull request adds some features to the processing "Import into PostGIS" algorithm:
- Ability to specify whether string fields should be imported as varchar or text field types
- Ability to set a primary key from the existing fields

There's also corresponding changes the postgres provider to handle these options, and some small fixes for uppercase/lowercase handling in processing/postgis.