Snippet function on FTS tables.
The problem is that peewee assumes when it encounters a Model as part of a query, that it should alias it to the alias used for that table. In this case, however, we don't want that -- we simply want the table name to be passed in.

To remedy, you can rewrite this as:

``` python
from peewee import Entity
(FTSBook
 .select(fn.snippet(Entity(FTSBook._meta.db_table)))
 .where(FTSBook.match('python')))
```

If you are using peewee 2.5.0 or older, you can also use:

``` python
(FTSBook
 .select(fn.snippet(FTSBook._as_entity()))
 .where(FTSBook.match('python')))
```

Finally, if you are using master, I changed `_as_entity()` to a public method, so it is now `as_entity()`:

``` python
(FTSBook
 .select(fn.snippet(FTSBook.as_entity()))
 .where(FTSBook.match('python')))
```
 Hi,
It seems the as_entity() method does not exist any more.
How should I use fn.snippet now? You can use `._meta.entity` property instead:

```python
FTSBook.select(fn.snippet(FTSBook._meta.entity))
```
When i write 

``` python
 FTSBook.select(fn.snippet(FTSBook)).where(FTSBook.match('python'))
```

 it returns:

``` sql
SELECT snippet("ftsbook" AS t1) FROM "ftsbook" AS t1 WHERE ("ftsbook" MATCH 'python')
```

But if i run this query it fails:

```
near "AS": syntax error
```

is it  a bug in peewee or there is a way to call a function that recive a table as argument?
