Add hstore array support

This PR adds support for *hstore* array fields in Postgres.

The model constructor was also refactored a bit to normalize the *DataTypes* definition throughout the library. The separation of concerns between dialects still needs a bit of work but that can be fixed in the future. 
So much more clean now! :)