Implement nelements for various backends

Allows differentiation between `expr.count()` (will eventually ignore `NA`
values) and `expr.nelements()` (never ignores `NA` values).

Also adds an `nrows` property of symbols
https://github.com/ContinuumIO/blaze/blob/master/blaze/expr/reductions.py#L40-L41