Moves aggregate functions list to each driver

This enables some drivers to support more functions than others (like
for example - SQLite doesn't support ceil() or floor() but others do).