Added support for distinct option in Model.aggregate method

Modified aggregate method in `lib/model.js` to support `distinct` option and added test to `test/dao-factory.test.js`. Now it is possible to:
```
Model.count({ distinct: true, include: [{ model: OtherModel, required: false }] }).success(function(count){ ... })
```