use eval instead of macros to postpone evaluation of class to runtime
bump version