Generic anonymous type wrapper, use keywords for record fields