Float gets autoconverted into integer in query
Nice catch. There have been issues raised in the past due to the opposite being the case -- Peewee was *not* converting the value on the right-hand-side to the appropriate data-type. The fix is pretty simple:

```python
from peewee import Passthrough

Table.select().where(Table.foo * Passthrough(0.5) > Table.bar).get()
```
The following code:
```python
import peeweee

db = peewee.SqliteDatabase(None)
class Table(peewee.Model):
    id = peewee.PrimaryKeyField()
    foo = peewee.IntegerField()
    bar = peewee.IntegerField()
    class Meta:
        database = db

db.init("test.db")
db.connect()
db.create_tables([Table])

Table.create(foo=10, bar=3)
Table.select().where(Table.foo * 0.5 > Table.bar).get()
```
Raises the following exception:
```python
Traceback (most recent call last):
  File "/home/budovi/.local/lib/python3.5/site-packages/peewee.py", line 3097, in get
    return next(clone.execute())
  File "/home/budovi/.local/lib/python3.5/site-packages/peewee.py", line 2271, in next
    obj = self.iterate()
  File "/home/budovi/.local/lib/python3.5/site-packages/peewee.py", line 2253, in iterate
    raise StopIteration
StopIteration

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/budovi/.local/lib/python3.5/site-packages/peewee.py", line 3101, in get
    % self.sql())
__main__.TableDoesNotExist: Instance matching query does not exist:
SQL: SELECT "t1"."id", "t1"."foo", "t1"."bar" FROM "table" AS t1 WHERE (("t1"."foo" * ?) > "t1"."bar")
PARAMS: [0]
```
Note the parameters passed to the query. The float got converted to integer.

This is inconsistent with shell behaviour:
```
$ sqlite3 test.db
sqlite> SELECT * FROM `Table` WHERE `foo` * 0.5 > `bar`;
1|10|3
```
and comparison / multiplication is defined with numeric types just fine (https://www.sqlite.org/datatype3.html).