Added macro system and removed define-list-handler guff.