WIP commit
finishing first cut at columns
throw exception if columns are invoked with more than one level of nesting