with-struct and with-struct-reader macros

allows for creation of lexical environment with less verbose symbols when using
defstruct created accessors
redefinitions: map-rows/with-struct

map-rows has function body as last parameter
with-struct symbol macrolet to avoid parenthtesis around struct member