better memory handling, and set macro for use of strdup