Truncation

For binning operations we want truncation operations.  This is important both for arithmetic truncation

```Python
>>> from blaze import Symbol, compute
>>> x = Symbol('x', 'real')
>>> compute(x.truncate(10), 123)
120
>>> compute(x.truncate(0.1), 3.1415)
3.1
```

And for datetime truncation (in progress)

```Python
In [1]: from blaze import *

In [2]: dts = np.array(['2000-06-25T12:35:00'], dtype='M8[us]')

In [3]: s = Symbol('s', 'var * datetime')

In [4]: compute(s.truncate(20, 'minutes'), dts)
Out[4]: array(['2000-06-25T12:20-0700'], dtype='datetime64[m]')

In [5]: compute(s.truncate(2, 'weeks'), dts)
Out[5]: array(['2000-06-22'], dtype='datetime64[W]')
```

Datetime truncation seems to be pretty doable in Pandas / NumPy. Python is a bit more of a pain.  No clue on SQLAlchemy.  Presumably we'd have to go into each of the databases independently.