Add array and Hstore as first-class objects.

Added arrays and Hstore objects as first-class entities in the Postgres dialect.

* Added array literals:

```javascript
// SELECT ARRAY[1, 2, 3] FROM post
post.select(Sql.array(1,2,3)).toString();
```

* Added array slicing:

```javascript
// SELECT (ARRAY[1, 2, 3])[2:3] FROM "post"
post.select(Sql.array(1,2,3).slice(2,3)).toString();
```

* Added array indexing:

```javascript
// SELECT (ARRAY[1, 2, 3])[2] FROM "post"
post.select(Sql.array(1,2,3).at(2)).toString();
```

* Added Hstore key accessor `->` operator: 

```javascript
// SELECT ("post"."metadata" -> 'age') FROM "post"
post.select(post.metadata.key('age')).toString();
```

* Added Hstore/array concat operator `||`:

```javascript
// SELECT ARRAY[1] || (HSTORE(x,2) -> 'x') FROM "post"
post.select(Sql.array(1).concat(Sql.functions.HSTORE('x',2).key('x'))).toString();
```