Support Postgresql array types

https://github.com/lib/pq/issues/49

This PR has support for:
- scanning text[], varchar[], int*[], float*[]
- valuing text[], varchar[], int*[], float*[] **in statement.Exec/Query/QueryRow only**

Known limitation: slice type cannot be converted if used directly by db.Exec/Query/QueryRow
Quick question... Is this desired? And does it work as expected if you use `[]sql.NullString` instead of `[]string`? Maybe add a test using the [`sql.NullString` type](http://golang.org/pkg/database/sql/#NullString)?