add abstract Data trait
named bar implicits, add to example as well