WIP: Attribute expressions

closes #659
If attribute subclasses rowwise then this can go away and the `dshape` property on rowwise can shine through.  It should end up passing through the old length if it exists.