first pass at configuration via attributes