Issue with aggregate functions and mathematical operations
> Is this an issue or are we just using it wrong ? :)

Yes, it appears to be! Thanks for bringing this to my attention. I'll look into fixing this tonight after work.

Hi,

We're having an issue with aggregate functions and mathematical calculations, this simple Test shows the issue:

```
from peewee import fn, Model

query = Model.select(
    fn.MAX(
        fn.IFNULL(1, 10) * 151,
        fn.IFNULL(None, 10)
    )
)
print query
```

This gives us:
<class 'peewee.Model'> SELECT MAX(IFNULL(?, ?) \* ?), IFNULL(?, ?) FROM "model" AS t1 [1, 10, 151, None, 10]

But it should be
SELECT MAX**(**(IFNULL(?, ?) \* ?), IFNULL(?, ?)**)** FROM "model" AS t1 [1, 10, 151, None, 10]
There is a bracket missing.

If you remove the `* 151` everything is fine. You can put in as many brackets as you like, they are getting ignored. I couldnt find a way to get this working.

Is this an issue or are we just using it wrong ? :)
