WIP: Attribute expressions

closes #659
Yeah, `Column` refers to a projection out of a dataset of a single column.  Perhaps it should be renamed to `ColumnProjection`.  The right way to designate something as columnlike is to set the class attribute to `iscolumn=True` and to inherit from `ColumnSyntaxMixin`.  As always, ways to clean up Expressions are welcome.